Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menyelesaikan Ralat \'403 Dilarang\' Apabila Menggunakan file_get_contents dalam PHP?

Bagaimana untuk Menyelesaikan Ralat \'403 Dilarang\' Apabila Menggunakan file_get_contents dalam PHP?

Barbara Streisand
Barbara Streisandasal
2024-10-26 21:23:03814semak imbas

How to Solve

Menyelesaikan masalah File_get_contents 403 Forbidden Error

Apabila menghadapi ralat 403 terlarang dengan file_get_contents pada pelayan, adalah penting untuk memahami punca utamanya. Begini cara untuk menyelesaikan masalah:

Menggunakan Keupayaan Nyahpepijat PHP

PHP menawarkan pilihan penyahpepijatan:

  • $http_response_header pembolehubah: Mengisi dengan pengepala HTTP respons selepas setiap panggilan file_get_contents(), memberikan cerapan tentang kod status HTTP (403 dalam kes ini).
  • pilihan konteks mengabaikan_errors: Membolehkan anda mendapatkan semula respons sebenar, yang boleh mendedahkan sebab ralat 403.

Menyemak Pengepala HTTP Hilang

Satu punca biasa ralat 403 hilang atau HTTP tidak betul tajuk dalam permintaan. Penyemak imbas menghantar pengepala ini secara automatik, tetapi permintaan tersuai mungkin tidak menyertakannya. Pertimbangkan untuk menambah pengepala seperti:

  • Perujuk: URL halaman yang dipautkan ke halaman sasaran
  • Ejen Pengguna: Pengecam penyemak imbas yang membuat permintaan

Kod Contoh untuk Menambah Pengepala 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>

Sumber Tambahan

  • [Penciptaan Konteks Strim](https ://www.php.net/manual/en/function.stream-context-create.php)

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat \'403 Dilarang\' Apabila Menggunakan file_get_contents dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn