【发布时间】:2012-01-20 14:21:10
【问题描述】:
问题是..
我刚刚在我的服务器上第一次使用 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)时,它返回错误,即找不到主机..!! 我尝试了我所有朋友的 ftp 服务器,但除了那个(ftp.server.com)之外,没有任何东西可以连接 实际发生了什么...为什么会发生这种情况,我该如何解决...现在我无法连接任何 ftp 服务器(我的 ftp.server.com 除外)...。 提前谢谢...
上面的东西在我的电脑上运行良好(IIS,PHP 5.3.8)
更新: 啊…………找到了问题……但没有找到解决办法。!!!!!! 服务器(此处:ftp.server.com)与托管上述 php 的主机服务器具有相同的 IP - 具有....并且 ftp_connect() 在其上工作.... 原因是服务器 ftp 和 http 主机都来自同一个网络托管服务提供商...
现在很清楚,(我认为)防火墙是所有问题的主要原因......如何修复那个防火墙......?请帮助..再次感谢..
【问题讨论】:
-
你100%确定下一个服务器是有效的吗?你能从你的 FTP 客户端连接到它吗?
-
可以用其他工具连接ftp.server2.com吗?
-
请验证您的服务器是否能够解析服务器名称:
gethostbyname()可以帮助解决此问题。 -
是的,它可以... !!结果我得到了IP地址..
-
ftp_connect 返回 false 并不意味着 host-not-found 是唯一可能的错误。有主机不可达、连接被拒绝等...先修复你的错误信息。