这是我的代码:
$fp = fsockopen("74.63.172.37", 22, $errno, $errstr, 50);
if (!$fp) {
echo "not connected";
} else {
$out = "GET / HTTP/1.1\r\n";
$out .= "Host: 74.63.172.37\r\n";
$out .= "Connection: Close\r\n\r\n";
fwrite($fp, $out);
$val = "";
if (!feof($fp)) {
echo "<br/>".fgets($fp, 128);
}
if (feof($fp)) {
echo "<br/>Not connected";
} else {
echo "<br/>Connected";
}
fclose($fp);
die();
}
在本地服务器上,它为我提供了一个输出:
trying to connect
SSH-2.0-1.82_sshlib GlobalSCAPE
Connected
然而在服务器上它给了我一个输出:
trying to connect
Not connected
我有另一个sftp服务器,我可以从服务器和本地连接。 可能是什么问题?
答案 0 :(得分:2)
您的ISP未启用它,或者端口被阻止。我建议你联系服务台。
答案 1 :(得分:2)
我能想到的两个选择:
目标服务器只接受来自特定IP地址的连接,并且您的Web服务器不在其上。
Web服务器上的Open SSL版本不兼容,因此无法同意用于连接的密码。或者它试图回退到协议1,但目标服务器配置为仅允许协议2(最新的)。
所以 - 检查目标服务器上是否存在防火墙限制,并检查openssl是否是最新的,并且您的Web服务器上的所有密码都可用。
答案 2 :(得分:1)
谢谢,我找到了解决方案。目标主机已阻止我的服务器IP地址。