2011-09-12 15 views
0

すごいひどい言い訳。fsockopen、足を入れることはできません!接続タイムアウト

基本的には、対処は、ホストは雌犬です。単純なfsockopenスクリプトは、どのポート、サーバー、または何かに関係なく、接続します。ウェブホストからサーバーのヘルプを取得しようとすると(私はホストを変更する方法がないという不幸な状況のため)、効果のない...バカの束が証明されました。しかし、簡単なphpinfo()は、allow_url_fopenがのであり、Registered Stream Socket Transportstcp, udp, unix, udg, ssl, sslv3, sslv2, tlsを許容することを示しています。

私は何が欠けていますか?ホストが慎重にソケット接続をブロックしているように聞こえますか?私もポート80が動作しない、意味:

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

+1

あなたはIPアドレスで接続できますか? DNSに問題がある可能性があります... – DaveRandom

+0

@DaveRandom - DNSの問題は 'Connection timed out'エラーを返しません。 "php_network_getaddresses:getaddrinfo failed:名前またはサービスが不明..." " –

答えて

5

あなたは(あなたがコードを表示しない)正しくfsockopenを呼び出して提供される、そのエラーがはい、彼らはアウトバウンド接続を行うからあなたを制限していることを暗示されます。

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

あなたがシェルアクセスを持っている場合は、Telnetを使用してみてください、あなたは同じ結果が表示されます。

telnet www.google.com 80 
+0

ちょうど私が思ったことだが、私はそれが事実であるという確認が必要だった。これは実際に私が使用しているコードです(PHPのドキュメントからコピーされています)。彼らはシェルアクセスを提供する...または少なくとも試してください;それは実際には機能しません。ああ、ウェブホスティングの素晴らしい世界... –

+0

あなたは新しいウェブホストが必要なように思えます:) –

関連する問題