问题是..
我刚刚在我的服务器上使用了ftp_connect()
<?php
$ftp_connect = ftp_connect('ftp.server.com') or die('<b>FTP Connection Error ...</b>');
$login_result = ftp_login($ftp_connect, 'ftp_username','ftp_password') or die('<b>FTP Login Error ...Check Your UserName and Password</b>');
ftp_pasv($ftp_connect,true);
?>
它工作正常并返回true。使用该ftp服务器(ftp.server.com)的每一件事都可以正常工作
然后下次我使用相同的服务器,一切都很好......但是 当我尝试使用另一台服务器(例如:ftp.server2.com)时,它返回false,即找不到主机.. !! 我尝试了所有的朋友ftp服务器,没有什么可以连接,除了那个(ftp.server.com) 实际上发生了什么...为什么会发生这种情况?我怎么能解决这个问题...现在我无法连接任何ftp服务器(除了我的ftp.server.com).... Thanx提前...
以上的东西在我的电脑上工作正常(IIS,PHP 5.3.8)
已更新: 啊.......想出了问题....但没找到解决办法。!!!! 服务器(这里:ftp.server.com)有相同的IP,主机服务器,上面的PHP托管 - 有...和soo ftp_connect()工作.... 原因是服务器ftp和http主机都来自同一个网络托管服务提供商......
现在很清楚,(我认为)防火墙是所有问题的主要原因....如何修复防火墙......? PLZ帮助......再次感谢..
答案 0 :(得分:0)
您没有指定端口号。如果您没有指定,ftp_connect()将使用21
作为默认端口号。此脚本可能适用于第一台服务器,因为它在端口21上运行,但其他服务器可能因为它们在不同的端口上运行而失败。询问你的朋友他们正在使用哪个端口,或者使用nmap之类的东西自己找到它。