ホームページ > バックエンド開発 > PHPチュートリアル > PHP で file_get_contents を使用するときに発生する「403 Forbidden」エラーを解決する方法

PHP で file_get_contents を使用するときに発生する「403 Forbidden」エラーを解決する方法

Barbara Streisand
リリース: 2024-10-26 21:23:03
オリジナル
813 人が閲覧しました

How to Solve

File_get_contents 403 禁止エラーのトラブルシューティング

サーバー上の file_get_contents で 403 禁止エラーが発生した場合は、根本的な原因を理解することが重要です。この問題のトラブルシューティング方法は次のとおりです:

PHP のデバッグ機能の使用

PHP にはデバッグ オプションがあります:

  • $http_response_header 変数: 各 file_get_contents() 呼び出し後に応答 HTTP ヘッダーを設定し、HTTP ステータス コード (この場合は 403) についての情報を提供します。
  • ignore_errors コンテキスト オプション:実際の応答。これにより、403 エラーの理由が明らかになります。

欠落している HTTP ヘッダーの確認

403 エラーの一般的な原因の 1 つは、HTTP が欠落しているか正しくないことです。リクエスト内のヘッダー。ブラウザーはこれらのヘッダーを自動的に送信しますが、カスタム リクエストにはこれらのヘッダーが含まれない場合があります。次のようなヘッダーを追加することを検討してください:

  • Referer: ターゲット ページにリンクしたページの URL
  • User-Agent: リクエストを行ったブラウザの識別子

HTTP ヘッダーを追加するサンプル コード

<code class="php">$context = stream_context_create(
    array(
        "http" => array(
            "header" => "User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
        )
    )
);

echo file_get_contents("www.google.com", false, $context);</code>
ログイン後にコピー

追加リソース

  • [ストリーム コンテキストの作成](https ://www.php.net/manual/en/function.stream-context-create.php)

以上がPHP で file_get_contents を使用するときに発生する「403 Forbidden」エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート