【问题标题】:ftp_connect not working even with localhost即使使用本地主机,ftp_connect 也无法正常工作
【发布时间】:2021-07-13 12:12:39
【问题描述】:

我有这个示例脚本,我正在尝试开始工作,但由于某种原因没有。我试过远程和本地主机服务器,但它总是死机。

我在运行它的服务器上安装了 ftp 客户端(我使用了 lftp)并且我能够正常连接。远程服务器正在接受连接,我可以从其他地方进行连接。

我运行这个 PHP 的服务器是 CentOS 7

<?php

// $ftp_server="remoteftpserver.com";
 $ftp_server="localhost";
 $ftp_user_name="username";
 $ftp_user_pass="pass";
 $file = "test.txt";
 $remote_file = "test.txt";

 // set up basic connection
 $conn_id = ftp_connect($ftp_server) or die("Unable to connect to server $ftp_server");
var_dump($conn_id);
 // login with username and password
 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// close the connection
 ftp_close($conn_id);
?>

有什么想法可能是错的吗?奇怪的是我可以通过命令行连接但不能使用PHP,这是我需要检查的php.ini上的配置吗?

在我的 PHPinfo 页面中,我可以看到:

FTP support enabled
FTPS support    enabled

谢谢,

【问题讨论】:

    标签: php ftp


    【解决方案1】:

    我才发现问题出在哪里。。原来是这样的:

    问题是 SELinux。我不想关闭它,所以我通过运行 getsebool httpd_can_network_connect 检查了 httpd_can_network_connect 的状态,发现它已关闭,所以我通过这样做将其打开:

    setsebool httpd_can_network_connect=1
    

    要在重启后启用,请执行以下操作:

    setsebool -P httpd_can_network_connect=1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-09
      • 2019-03-15
      • 1970-01-01
      • 1970-01-01
      • 2014-11-28
      • 2013-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多