0

原谅我可怕的双关语。

基本上,交易是,主人是个婊子。一个简单的fsockopen脚本,无论是什么端口、服务器或任何东西,都会连接。试图从虚拟主机获得服务器帮助(由于不幸的情况我无法更改主机)证明是无效的......一群白痴。一个简单的phpinfo()节目,然而,它allow_url_fopenonRegistered Stream Socket Transports允许我tcp, udp, unix, udg, ssl, sslv3, sslv2, tls

那么,我错过了什么?听起来主机是否在谨慎地阻止套接字连接?我的意思是,即使端口 80 也不起作用:

Warning: fsockopen() [function.fsockopen]: unable to connect to www.google.com:80 (Connection timed out)

4

1 回答 1

5

如果您fsockopen正确调用(您没有显示代码),则该错误暗示是的,它们限制您进行出站连接。

$fp = fsockopen("www.google.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
}

如果您有 shell 访问权限,请尝试使用 telnet,您应该会看到相同的结果:

telnet www.google.com 80
于 2011-09-12T10:49:03.293 回答