我遇到了无法调试的奇怪问题。 相同的代码在不同的服务器上运行良好,但在 Amazon 实例上却不行。特别是,ftp_connect() 不起作用。
<?php
error_reporting(E_ALL);
$conn = ftp_connect("server.address");
var_dump($conn);
$login_result = ftp_login ($conn, "username", "pass");
?>
输出:bool(false) 警告:ftp_login() 期望参数 1 为资源,第 8 行/var/www/dev/ftp/index.php 中给出的 bool 值
我可以从命令行连接到这个 ftp 服务器,所以它不是任何全局防火墙。 ftp_connect() 只是给我 false 而已。如果我尝试连接到不存在的地址,它会开始显示警告,但对于现有地址 - 只有沉默和错误。 您对如何调试它有任何想法吗?
最佳答案
检查它是否从控制台运行。如果一切正常,安装 Apache 2 ITK MPM 并添加到 VirtualHost:
服务器名称 example.com DocumentRoot/path/to/web/root
AssignUserId vhost-user vhost-group
关于Php ftp_connect 在 AWS 服务器上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23360663/