PHP の file_get_contents() がリモート サーバーで HTTP 403 Forbidden Error で失敗する
PHP の file_get_contents() 関数を使用してリモート Web からコンテンツを取得する場合ページをローカルで動作させても、サーバー上で HTTP 403 Forbidden エラーが発生する場合があります。この問題のトラブルシューティングを行うには、次の点を考慮してください。
1. PHP ユーティリティによるデバッグ
PHP には、次のようなデバッグ オプションが用意されています。
2.不足している HTTP ヘッダーへの対処
リクエストには、Referer や User-Agent などの必須 HTTP ヘッダーが不足している可能性があります。ほとんどのブラウザは次のユーザー エージェントを使用します:
3.ユーザー エージェントの偽装
stream_context_create() を使用して、偽のユーザー エージェントでコンテキストを作成できます。
<code class="php">$context = stream_context_create( array( "http" => array( "header" => "User-Agent: <Your User Agent>" ) ) ); echo file_get_contents("www.google.com", false, $context);</code>
このリクエストはユーザー エージェントを偽装し、指定されたユーザー エージェントに送信します。 URL.
参照:
以上がPHP の「file_get_contents()」関数がリモート サーバーで HTTP 403 Forbidden エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。