Bagaimana cara memperbaiki kesalahan 404 di php?

Ini bisa sangat berguna jika Anda perlu menampilkan pesan 404 jika catatan database tertentu tidak ada

Dengan mengirimkan kode status HTTP 404 ke klien, kami dapat memberi tahu mesin telusur dan perayap lain bahwa sumber daya tidak ada

Untuk mengirim 404 ke klien, kita dapat menggunakan fungsi http_response_code PHP seperti itu

//Send 404 response to client.
http_response_code(404)
//Include custom 404.php message
include 'error/404.php';
//Kill the script.
exit;

Perhatikan bahwa fungsi ini hanya tersedia di PHP versi 5. 4 dan sesudahnya

Jika Anda menggunakan versi PHP yang lebih lama dari 5. 4, maka Anda harus menggunakan fungsi header sebagai gantinya

//Use header function to send a 404
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found", true, 404);
//Include custom message.
include 'errors/404.php';
//End the script
exit;
_

Pada kode di atas, kita

  1. Kirim kode respons ke klien
  2. Kami menyertakan file PHP yang berisi kesalahan "404 Not Found" khusus kami. File ini tidak wajib, jadi silakan hapus jika Anda mau
  3. Kami kemudian menghentikan skrip PHP dengan memanggil pernyataan keluar

Jika Anda menjalankan salah satu contoh kode di atas dan memeriksa respons di alat pengembang browser Anda, Anda akan melihat sesuatu seperti ini

Request URL:http://localhost/test.php
Request Method:GET
Status Code:404 Not Found
Remote Address:[::1]:80
Referrer Policy:no-referrer-when-downgrade

Perhatikan segmen Kode Status dari respons HTTP server. Ini adalah tajuk 404

Kapan saya harus menggunakan ini?

Dalam kebanyakan kasus, server web Anda akan secara otomatis menangani kesalahan 404 jika sumber daya tidak ada

Namun, apa yang terjadi jika skrip Anda dinamis dan memilih data dari database Anda? . php?id=234 dan pengguna 234 tidak ada?

Pengguna file. php akan ada, jadi server web Anda akan mengirimkan kembali status "200 OK", terlepas dari apakah pengguna dengan ID 234 ada atau tidak

Dalam kasus seperti ini, kami mungkin perlu mengirim header 404 Not Found secara manual

Mengapa PHP tidak menampilkan pesan 404 yang sama dengan server web saya?

Anda mungkin memperhatikan bahwa server web Anda tidak menyajikan pesan kesalahan default "404 Not Found" ketika Anda mengirim header secara manual dengan PHP

Bagaimana cara memperbaiki kesalahan 404 di php?

Pesan default yang ditampilkan Apache setiap kali sumber daya tidak dapat ditemukan

Ini karena, sejauh menyangkut server web, file tersebut memang ada dan sudah melakukan tugasnya

Salah satu solusi untuk masalah ini adalah memastikan bahwa PHP dan server web Anda menampilkan pesan 404 yang sama persis

Misalnya, dengan Apache, Anda dapat menentukan jalur pesan error kustom menggunakan direktif ErrorDocument

Setiap situs web terkadang mengalami Error 404 yang membuat frustrasi. Tidak ditemukan. Dan jika Anda memiliki situs web sendiri, Anda mungkin ingin menyesuaikan halaman kesalahan ini. Syukurlah, itu tidak terlalu sulit untuk dilakukan. Halaman kesalahan Anda mungkin berupa ekstensi apa pun yang Anda inginkan. Biasanya, mereka ditulis dalam SHTML. Tetapi SHTML tidak terlalu dinamis dalam hal apa yang dapat dilakukan dengannya. Jadi saya pergi ke PHP untuk halaman kesalahan saya. Pengodeannya juga tidak sulit. Jadi mari kita mulai

Tambahkan TipAjukan PertanyaanKomentarUnduh

Langkah 1. Persyaratan

Jika Anda memiliki situs web, server selang Anda harus menginstal PHP. Jika tidak, tanyakan kepada admin server Anda apakah mereka akan berbaik hati untuk menginstalnya. Jika Anda hanya membuang-buang waktu, Anda memerlukan beberapa jenis emulator. Jika Anda menggunakan Windows, gunakan easyPHP untuk ini. Jika Anda menggunakan Linux dan dapat menyisihkan sumber dayanya, dapatkan. apache2 dan php (untuk Ubuntu, sudo apt-get install apache2 php). Jika Anda menggunakan mac, saya tidak tahu apa yang dapat Anda gunakan

Setelah Anda memenuhi persyaratan ini, lanjutkan ke langkah berikutnya

Tambahkan TipAjukan PertanyaanKomentarUnduh

Langkah 2. . htaccess

Bagaimana cara memperbaiki kesalahan 404 di php?

Seperti yang dinyatakan pada halaman sampul, halaman kesalahan kustom Anda dapat memiliki ekstensi apa pun yang Anda inginkan. Tetapi Anda tidak dapat menggunakannya jika server Anda tidak diminta untuk menggunakannya. Di sinilah. htaccess masuk. . htaccess adalah file bernama, yah, ". htaccess". File ini dapat digunakan untuk mengonfigurasi situs Anda ke tingkat tertentu. Apa yang akan kita lakukan adalah melanjutkan dan mengarahkan kesalahan 404 ke 404. php (yang ironisnya belum ada). Ini akan menjadi file tersembunyi (setiap file yang dimulai dengan titik adalah file tersembunyi). Jadi pastikan Anda dapat melihat file tersembunyi. Dalam file ini, tulis kode berikut dan simpan

ErrorDocument 404 /404.php
Dan saat Anda melakukannya, jika Anda menginginkannya
ErrorDocument 400 /400.php
ErrorDocument 401 /401.php
ErrorDocument 403 /403.php
ErrorDocument 404 /404.php #Don't re-add this line
ErrorDocument 500 /500.php
_

Tambahkan TipAjukan PertanyaanKomentarUnduh

Langkah 3. 404. php

Bagaimana cara memperbaiki kesalahan 404 di php?

Dan halaman kesalahan yang sebenarnya. Saya akan mengabaikan semua hal "mari ikuti standar" yang biasa saya lakukan. Alasan saya memilih PHP untuk halaman kesalahan adalah karena Anda dapat mengetahui sumber kesalahan sampai batas tertentu; . Ini dicapai dengan mem-parsing variabel server. Anda juga dapat menguraikan beberapa variabel server lainnya dan melihat dengan tepat apa yang dimasukkan ke dalam bilah alamat. Untuk ible ini, kami hanya akan mengambil halaman yang diminta dan perujuknya, jika ada

 does not exist, sorry.

Baris di atas akan memberi tahu pengunjung bahwa halaman yang mereka inginkan, bersama dengan jalur halaman (diawali dengan garis miring), tidak ada. Sangat membantu untuk memberi tahu halaman tertentu karena hyperlink yang diikuti, jika diikuti, mungkin tidak mencerminkan jalur halaman. Kode selanjutnya akan diambil jika ada perujuk dan siapa itu

if(isset($_SERVER['HTTP_REFERER']) && !empty($_SERVER['HTTP_REFERER'])){
$refuri = parse_url($_SERVER['HTTP_REFERER']); // use the parse_url() function to create an array containing information about the domain if($refuri['host'] == "your-domain.com"){
//the link was on your site
}
else{ //the link was on another site. $refuri['host'] will return what that site is
} } else{
//the visitor typed gibberish into the address bar
}
?>
_
Di situs saya, saya memberi tahu pengguna satu dari tiga hal yang harus dilakukan sesuai kode. Jika perujuk adalah situs saya, email saya dan beri tahu saya. Jika perujuk berada di situs lain, kirimkan email kepada mereka dan beri tahu mereka. Jika mereka mengetik secara acak di bilah alamat, berhentilah melakukannya

if(isset($_SERVER['HTTP_REFERER']) && !empty($_SERVER['HTTP_REFERER'])){
$refuri = parse_url($_SERVER['HTTP_REFERER']); // use the parse_url() function to create an array containing information about the domain
if($refuri['host'] == "cutlery-in-the-toaster.com"){
echo "You should email [email protected] and tell me I have a dead link on this site.";
}
else{
echo "You should email someone over at " . $refuri['host'] . " and let them know they have a dead link to this site.";
}
}
else{
echo "If you got here from Angola, you took a wrong turn at Catumbela. And if you got here by typing randomly in the address bar, stop doing that. You're filling my error logs with unnecessary junk.";
}
?>

Tambahkan TipAjukan PertanyaanKomentarUnduh

Langkah 4. Pengujian

Pertama, buka situs Anda seperti biasa. Itu harus muncul secara normal. Untuk menguji apakah Anda. htaccess sedang dibaca, masukkan sampah acak di mana saja di dalamnya dan simpan. Memuat ulang halaman seharusnya memberikan kesalahan 500. Jika tidak, pastikan situs Anda sudah diatur untuk digunakan. htaccess (saya hanya perlu mengedit file konfigurasi server saya untuk membuatnya berfungsi). Jika masih tidak berhasil, coba hapus semua ruang kosong dan masukkan kembali
Jika tidak, batalkan sampah dan simpan kembali. Sekarang coba kunjungi halaman yang tidak ada. Anda akan melihat halaman 404 Anda. Tambahkan beberapa tautan mati di situs Anda dan coba ikuti mereka. Anda harus berakhir dengan halaman 404 yang sama tetapi dengan konten yang berbeda. Tambahkan tautan mati ke situs web lain dan halaman 404 akan memiliki konten yang berbeda

Tambahkan TipAjukan PertanyaanKomentarUnduh

Langkah 5. File

Berikut adalah file yang digunakan dalam ible ini. Edit sesuai keinginan/wajib

Lampiran

  • Bagaimana cara memperbaiki kesalahan 404 di php?
    Bagaimana cara memperbaiki kesalahan 404 di php?
    custom_404. ritsleting

    Unduh

Tambahkan TipAjukan PertanyaanKomentarUnduh

1 Orang Membuat Proyek Ini

  • Bagaimana cara memperbaiki kesalahan 404 di php?
    Bagaimana cara memperbaiki kesalahan 404 di php?

    davi koth membuatnya

Apakah Anda membuat proyek ini?

Saya berhasil

Rekomendasi

Bagaimana cara memperbaiki kesalahan 404 di php?
Bagaimana cara memperbaiki kesalahan 404 di php?

LEVITATING BANANA - Electromagnetic Levitation oleh ElectroBing di Elektronik

20 2. 9K

Bagaimana cara memperbaiki kesalahan 404 di php?
Bagaimana cara memperbaiki kesalahan 404 di php?

Lily∞Bot. Penghindaran Rintangan Dengan 4 Sonar (HC-SR04) oleh carlottaberry dalam Robot

10 1. 4K

Bagaimana cara memperbaiki kesalahan 404 di php?
Bagaimana cara memperbaiki kesalahan 404 di php?

Catu Daya DIY oleh RP HOBBYIST dalam Pencetakan 3D

96 9. 4K

Bagaimana cara memperbaiki kesalahan 404 di php?
Bagaimana cara memperbaiki kesalahan 404 di php?

Soundbar Responsif untuk Pembicara oleh Gautchh dalam Audio

73 12 ribu

  • Desain permainan. Tantangan Desain Siswa

    Bagaimana cara memperbaiki kesalahan 404 di php?
    Bagaimana cara memperbaiki kesalahan 404 di php?
  • Kontes Kode Blok

    Bagaimana cara memperbaiki kesalahan 404 di php?
    Bagaimana cara memperbaiki kesalahan 404 di php?
  • Lomba memanggang

    Bagaimana cara memperbaiki kesalahan 404 di php?
    Bagaimana cara memperbaiki kesalahan 404 di php?

Komentar

0

Bagaimana cara memperbaiki kesalahan 404 di php?
Bagaimana cara memperbaiki kesalahan 404 di php?

alikayn

4 bulan yang lalu

Balas Suara positif

File shtml dapat bersifat informatif, menyediakan tautan yang bermanfaat, dan dapat menyesuaikan dengan tampilan dan nuansa situs. Apa yang Anda miliki di sini terlihat seperti interaksi operator CLI dan sebenarnya bukan tentang web itu, ini adalah internet tahun 1970-an-1980-an. Ini mungkin akurat, tetapi tidak lengkap

Bagaimana cara mengatasi error 404?

Yang dapat Anda lakukan terkait 404 kesalahan .
Periksa ulang URL yang Anda masukkan, terutama jika Anda mengetiknya dengan tangan. .
Segarkan halaman web. .
Gunakan Google (atau mesin telusur serupa) untuk mencoba dan menemukan kembali laman tersebut. .
Cobalah untuk sampai ke sana di perangkat lain. .
Gunakan Wayback Machine Internet Archive. .
Hubungi webmaster atau pemilik situs

Bagaimana cara mengarahkan halaman kesalahan 404 di PHP?

Arahkan ulang 404 ke beranda dengan dua cara. .
Buat file php baru dengan kode yang sesuai dan unggah ke folder tema
Jika situs web mengalami kehilangan lalu lintas karena terlalu banyak halaman kesalahan 404, maka alihkan semua 404 halaman ke beranda dengan menggunakan plugin redirection

Bagaimana cara mengembalikan kesalahan 404 di PHP?

Jawaban terbaru (pada PHP 5. 4 atau lebih baru) untuk menghasilkan 404 halaman adalah dengan menggunakan http_response_code. ? php http_response_code(404); . php'); // berikan HTML Anda sendiri untuk halaman kesalahan die();

Apa itu kode respons PHP 404?

404 adalah nomor kesalahan HTTP yang dikembalikan saat sumber daya tidak dapat ditemukan di server . Kode PHP di bagian atas file di atas mengembalikan kode ini untuk memastikan sistem seperti mesin telusur tidak salah mengartikan halaman sebagai konten asli.