Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Pengepala PHP 404 Saya Menghasilkan Halaman Kosong?

Mengapa Pengepala PHP 404 Saya Menghasilkan Halaman Kosong?

Patricia Arquette
Patricia Arquetteasal
2024-11-14 20:18:02467semak imbas

Why Does My PHP 404 Header Result in a Blank Page?

Mengapa Menghantar Ralat 404 dalam PHP Mungkin Tidak Berfungsi

Dalam PHP, jika anda menemui halaman kosong walaupun menggunakan kod untuk menetapkan 404 Pengepala Tidak Ditemui, ini kerana:

if (strstr($_SERVER['REQUEST_URI'],'index.php')) {
    header('HTTP/1.0 404 Not Found');
}

Walaupun betul dari segi teknikal, kod ini tidak mempunyai langkah penting: PHP bertanggungjawab untuk mengeluarkan halaman ralat 404.

Bagaimana 404s Biasanya Dikendalikan

Biasanya, 404 ralat diurus oleh pelayan web:

  1. Pengguna meminta URI.
  2. Pelayan web menyemak fail di URI tersebut.
  3. Jika fail tidak ditemui, pelayan web menghantar pengepala 404 dan memaparkan halaman ralat 404.

Peranan PHP dalam Pengendalian Ralat

Walau bagaimanapun, apabila halaman PHP dilaksanakan, pelayan web menghantar kawalan kepada PHP sebelum ia boleh mengendalikan 404.

  1. Pengguna meminta URI.
  2. Pelayan web mengesan halaman PHP dan memberikan kawalan kepada PHP.
  3. PHP menyemak fail dan mendapati ia tidak ditemui.
  4. PHP menghantar pengepala 404 tetapi kini bertanggungjawab untuk memaparkan halaman ralat.

Dalam senario ini, PHP tidak mempunyai keupayaan untuk menunjukkan halaman 404 tersuai, menyebabkan halaman kosong. Untuk menyelesaikan isu ini, anda boleh memasukkan halaman 404 yang anda inginkan dalam kod PHP atau ubah hala ke halaman 404 khusus yang wujud di luar aplikasi PHP.

Atas ialah kandungan terperinci Mengapa Pengepala PHP 404 Saya Menghasilkan Halaman Kosong?. 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