Layar Putih Kematian WordPress: Panduan untuk Pemulihan
Diterbitkan: 2023-01-10WordPress, seperti MacOS dan bahkan Windows sekarang, memiliki "Layar Putih Kematian" atau "WSOD" yang terkenal. WSOD muncul ketika terjadi kesalahan yang parah. Anda menghadapi layar putih kosong atau sebagian besar kosong karena alasan yang tidak diketahui. Sekarang apa?
Apa itu Layar Putih Kematian WordPress (WSOD)?
Anda tidak mungkin menemukan "Layar Putih Kematian" (WSOD) di situs WordPress dalam kondisi normal. Ini hanyalah layar putih kosong yang muncul alih-alih antarmuka front-end atau back-end publik situs WordPress. Itu berarti WordPress telah macet dan tidak dapat dimuat dengan benar.
Mengapa? Apa yang salah?
Sejak WordPress 5.2 dirilis pada Mei 2019, WordPress telah memiliki Mode Pemulihan untuk melindungi Anda dari WSOD. Tanpa Mode Pemulihan, masalah kompatibilitas akan menghasilkan banyak WSOD dan pengguna WordPress yang frustrasi. Jika server Anda menggunakan versi PHP atau MySQL yang tidak didukung oleh plugin, tema, atau ekstensi yang Anda instal, alih-alih merusak situs Anda, Anda akan mendapatkan Mode Pemulihan. Saat ini, kesalahan PHP Out-of-Memory (OOM) mungkin merupakan skenario paling umum yang tersisa yang akan melewati perlindungan WSOD, membuat layar Anda benar-benar kosong.
Saya memeriksa dengan kontributor inti WordPress Marius Jensen untuk mencari tahu apa lagi yang mungkin menyebabkan WSOD yang sebenarnya saat ini. Marius adalah penulis plugin Kesehatan Situs (sekarang Pemeriksaan Kesehatan dan Pemecahan Masalah) yang konsep dan fiturnya akhirnya masuk ke inti WordPress. (Begitulah cara kami mendapatkan Mode Pemulihan dan perlindungan lainnya.) Marius mengonfirmasi bahwa satu-satunya cara untuk membuat WordPress mogok dengan layar yang benar-benar kosong adalah dengan menghentikan aliran eksekusi PHP sehingga penangan kesalahan fatal tidak dapat beroperasi sebagaimana mestinya. Memutus koneksi antara PHP dan server HTTP Anda akan mencapainya. Anda tidak akan mendapatkan umpan balik pemecahan masalah di layar. Itu akan membuat frustrasi, tetapi jika Anda hanya bekerja di dalam WordPress, memasang dan mengonfigurasi plugin, ini tidak mungkin terjadi.
Apakah Layar Putih Kematian Berarti WordPress Telah Diretas?
Tidak, WSOD tidak berarti orang jahat menangkap Anda. Namun, dalam kasus yang jarang terjadi, ini bisa menjadi efek samping dari pelanggaran keamanan. Jika menurut Anda peretas telah menyusupi situs Anda, buka panduan Kathy Zant, Cara Membersihkan Situs WordPress yang Diretas.
Kesalahan pengkodean PHP, konflik antara dua atau lebih plugin, atau masalah di lingkungan server Anda adalah kemungkinan besar penyebab WSOD. Untungnya, ini bukan bencana! Situs Anda dan isinya belum hilang. Jika mau, Anda dapat memperbaiki WSOD sendiri.
Pada artikel ini, kita akan membahas daftar kemungkinan diagnosis dan pengobatan untuk WSOD. Anda akan belajar cara menghidupkan kembali situs WordPress Anda. Anda juga akan mempelajari cara kerja WordPress pada level yang lebih dalam.
Lihat Pratinjau
Layar Putih Kematian WordPress: Apakah Saya Melakukannya?
Ya. Layar Putih Kematian mungkin adalah hasil dari sesuatu ANDA lakukan ke situs WordPress Anda.
Penyebab WSOD biasanya ditemukan di plugin WordPress yang baru saja Anda instal dan aktifkan. Atau, itu bisa jadi hasil dari pembaruan terkini. Plugin yang baru ditambahkan atau diperbarui mungkin mengalami konflik dengan plugin lain. Dalam skenario ini, satu plugin mencoba melakukan hal yang sama seperti yang lain, atau mereka bertindak untuk tujuan yang bertentangan.
Jika plugin, tema, atau potongan kode PHP yang tidak berfungsi menyebabkan kesalahan fatal, Anda mungkin mendapatkan WSOD. Mereka mungkin berisi kesalahan sintaksis, bug, atau kode yang tidak kompatibel dengan versi PHP yang Anda gunakan. Jika Anda atau host Anda baru saja memutakhirkan versi PHP Anda — itu hal yang bagus! — plugin yang tidak kompatibel akan mulai menimbulkan kesalahan dan dapat menurunkan situs Anda dengan WSOD. Jika Anda menggunakan WordPress 5.2 atau lebih tinggi sebagaimana mestinya, masalah ketidakcocokan akan mengaktifkan Mode Pemulihan, yang jauh lebih bermanfaat daripada WSOD yang sebenarnya.
Biasanya pelakunya adalah apa pun yang baru saja diubah dengan plugin, tema, atau kode khusus.
Karena WSOD sering kali merupakan respons terhadap apa pun yang diubah terakhir (atau baru-baru ini) yang memengaruhi fungsionalitas situs Anda. Tinjau semua perubahan terkini. Fokus pada perubahan yang tampaknya paling mungkin menyebabkan masalah. Jika Anda baru saja menginstal plugin baru atau memodifikasi beberapa kode tema, itu adalah tempat pertama untuk melihat apa yang salah.
Ketika WordPress Hanya Sebagian Besar Mati
Semua WSOD tidak sama, dan beberapa bahkan bukan WSOD yang sebenarnya.
Anda mungkin mendapatkan semacam pesan kesalahan alih-alih layar yang benar-benar putih. Ini mungkin pesan kesalahan server tentang kesalahan HTTP 500 atau koneksi database yang hilang. Ini mungkin pesan kesalahan kritis dari WordPress. Atau, situs Anda mungkin dimuat secara normal untuk pengunjung, tetapi saat Anda mencoba masuk, Anda mendapatkan layar putih kematian. Kebalikannya mungkin benar dalam kasus lain: Anda dapat masuk ke dasbor WordPress, tetapi ujung depan situs Anda yang menghadap publik membuat layar kosong untuk semua orang.
Jika pengalaman WSOD Anda cocok dengan deskripsi ini, kabar baik! Situs Anda sebagian besar hanya mati. Tidak akan sulit untuk menghidupkannya kembali.
Jika Anda menemukan diri Anda menghadapi layar putih yang benar-benar kosong ketika Anda mengunjungi situs WordPress Anda atau mencoba masuk, itulah WSOD yang sebenarnya. Anda harus menggali lebih dalam untuk menentukan apa penyebabnya.
Mode Pemulihan WordPress dan Layar Putih Kematian
Untungnya bagi siapa pun yang dihadapkan dengan WSOD, Mode Pemulihan diperkenalkan di WordPress 5.2 untuk menghilangkannya. Mode Pemulihan menangkap banyak kesalahan fatal dan membantu Anda memperbaikinya. Jika Anda tidak menggunakan rilis utama inti WordPress terbaru, mulailah dari sana. Dapatkan informasi terbaru!
Berkat Mode Pemulihan WordPress, sangat jarang melihat layar putih kosong saat terjadi kesalahan. Anda akan lebih sering melihat jendela putih di atas layar abu-abu dengan pesan berikut pada WordPress 6.1:
Versi WordPress yang lebih lama akan menampilkan pesan dengan kata-kata yang mirip seperti, “Situs ini mengalami kesulitan teknis.”
Jika Anda menjelajah ke URL backend /wp-admin
, juga akan ada pemberitahuan yang memberitahu Anda untuk memeriksa akun email administrator Anda untuk informasi lebih lanjut:
Dalam kasus lain, Anda mungkin melihat layar putih dengan teks tebal yang menjelaskan "Kesalahan Server Internal" dengan semacam penjelasan dan panduan untuk memperbaiki situs Anda.
Selamat datang di Pemulihan
Ini adalah Mode Pemulihan. WordPress sedang mencoba untuk membantu Anda membantunya kembali berdiri.
Hal pertama yang harus dilakukan adalah memeriksa alamat email yang terkait dengan akun Administrator WordPress Anda. WordPress mencoba mengidentifikasi kesalahan fatal PHP di semua kode yang dijalankannya.
Jika memungkinkan, WordPress akan “menjeda” plugin atau kode lain yang tidak berfungsi. WordPress akan mencegah eksekusi kode buruk. Kemudian akan melaporkan detailnya ke Administrator melalui email.
Di email Mode Pemulihan, Anda akan menemukan petunjuk dan tautan sementara untuk masuk ke WordPress di bawah Mode Pemulihan. (Link ini berlaku selama 24 jam. Setelah itu akan dikirimkan link baru jika situs masih mengalami error kritis.)
KIAT PRO: Jika Anda tidak mendapatkan email Mode Pemulihan, Anda tetap dapat masuk ke WordPress dalam Mode Pemulihan dengan menambahkan alamat berikut ke URL situs dasar saat Anda masuk sebagai Administrator: /wp-login.php?action=entered_recovery_mode
.
Inilah kesempatan Anda untuk menyelidiki lebih lanjut. Jika Mode Pemulihan telah mengidentifikasi plugin tertentu sebagai penyebab WSOD Anda, nonaktifkan. Ini akan membuat situs Anda kembali aktif untuk semua orang. Kemudian Anda dapat menyelidiki masalah yang diketahui untuk plugin ini. Periksa untuk melihat apakah ada pembaruan untuk itu. Hubungi orang yang bertanggung jawab untuk memeliharanya.
Tidak Setiap Layar Putih Kematian Sama di WordPress
Dalam beberapa kasus luar biasa, ada yang tidak beres di tempat lain di WordPress atau lingkungan server Anda. Proses pembaruan atau penginstalan mungkin terhenti, membuat situs Anda terjebak dalam mode pemeliharaan. Anda, penyedia hosting Anda, atau plugin yang telah Anda instal mungkin telah memodifikasi php.ini
atau .htaccess
dengan hasil yang tidak terduga. Lingkungan Anda yang ada mungkin tidak mendukung persyaratan plugin yang baru dipasang.
Mode Pemulihan WordPress tidak dapat mengatasi situasi ini, tetapi akan menghasilkan pesan kesalahan yang terlihat pada layar putih. Ujung depan situs Anda mungkin tidak dapat diakses, tetapi layar masuk admin dan antarmuka ujung belakang mungkin beroperasi secara normal.
Ini bukan situasi WSOD yang sebenarnya, tetapi sama menjengkelkannya. Biasanya, salah satu dari kondisi berikut menyebabkannya:
1. Anda Terjebak dalam Mode Pemeliharaan
Saat memperbarui inti, plugin, atau tema WordPress, WordPress masuk ke “Mode Pemeliharaan.” Menjelajah ke bagian mana pun dari situs akan menampilkan layar abu-abu dengan jendela pesan putih yang berbunyi:
Kadang-kadang ini tidak beres dalam satu menit, tetapi hosting WordPress yang dikelola dengan kualitas akan memperhatikan dan memperbaikinya dengan proses otomatis. Jika Anda telah menunggu beberapa menit tanpa perubahan, Anda dapat keluar dari Maintenance Mode dengan menghapus file .maintenance
di folder root web/aplikasi tempat WordPress diinstal. (Untuk melihatnya, Anda mungkin perlu mengaktifkan tampilan file "tak terlihat" yang dikepalai oleh titik dalam nama file.)
Jika tidak ada file .maintenance
, situs Anda akan dimuat seperti yang diharapkan.
2. Anda telah Mencapai Batas Unggahan File atau Ukuran Posting
Situs Anda mungkin kehabisan waktu ke layar putih dalam proses pengunggahan, pascapenerbitan, atau pengiriman formulir karena Anda mengirimkan terlalu banyak data.
Solusi: Tingkatkan batas konten posting Anda di wp-config.php
:
ini_set('pcre.recursion_limit',20000000); ini_set('pcre.backtrack_limit',10000000);
Solusi: Tingkatkan unggahan file Anda dan batas ukuran posting di php.ini
:
upload_max_filesize = 256M post_max_size = 256M
Memperpanjang waktu (dalam detik) sebelum pengiriman atau pengiriman formulir apa pun habis juga dapat membantu. Anda juga dapat menambah waktu PHP untuk mengeksekusi skrip dan mem-parsing input. Selain itu, kami dapat menambah jumlah variabel yang diperbolehkan dalam pengiriman formulir. Terakhir, kita dapat menentukan batas waktu setelah PHP akan memperlakukan data yang dikirimkan sebagai sampah:
max_execution_time = 300 max_input_time = 300 max_input_vars = 1000 session.gc_maxlifetime = 1000
Atau di .htaccess
, httpd.conf
, atau virtualhost
:
php_value upload_max_filesize 256M php_value post_max_size 256M php_value max_execution_time 300 php_value max_input_time 300 php_value max_input_vars 1000 php_value session.gc_maxlifetime 1000
Atau dalam cuplikan kode khusus untuk WordPress atau file functions.php
tema:
@ini_set( 'upload_max_filesize', '256M' ); @ini_set( 'post_max_size', '256M' ); @ini_set( 'max_execution_time', '300' ); @ini_set('max_input_time', '300' ); @ini_set('max_input_vars', '1000' ); @ini_set('session.gc_maxlifetime', '1000' );
Nilai memori dan waktu dalam parameter ini hanyalah rekomendasi. Untuk memastikannya berfungsi dan untuk memeriksa nilainya saat ini, gunakan alat Kesehatan Situs di antarmuka Admin WordPress Anda.
Seiring dengan Mode Pemulihan, WordPress 5.2 memperkenalkan alat Kesehatan Situs. Ini sangat membantu untuk mendiagnosis masalah dan mendapatkan informasi teknis tentang pengaturan situs dan lingkungan server Anda. Temukan di Menu Admin Anda di bawah Alat > Kesehatan Situs. Anda juga dapat memanfaatkan fitur yang diperluas di plugin Pemeriksaan Kesehatan dan Pemecahan Masalah untuk WordPress.
3. PHP kehabisan memori
PHP adalah bahasa skrip sisi server yang menjadi dasar inti WordPress. WSOD muncul jika tidak ada cukup memori untuk PHP untuk menjalankan WordPress dan plugin aktif Anda. Anda mungkin melihat ini ditunjukkan dalam pesan kesalahan atau log.
Bergantung pada paket hosting Anda, Anda mungkin dapat meningkatkan batas memori PHP untuk semua aplikasi di server Anda atau contoh WordPress tertentu. Minta bantuan tim dukungan teknis host Anda jika Anda tidak yakin apa yang harus dilakukan.
wp-config.php
Biasanya, menambahkan pengaturan berikut ke wp-config.php
di folder WordPress Anda akan menetapkan batas memori front-end untuk WordPress menjadi 256 MB dalam contoh ini:
define('WP_MEMORY_LIMIT', '256M');
128 hingga 256 MB seharusnya lebih dari cukup. Anda juga dapat menentukan memori maksimum atau back-end yang dialokasikan ke PHP (256 MB juga dalam contoh berikutnya) dengan menambahkan baris berikut ke wp-config.php
juga:
tentukan('WP_MAX_MEMORY_LIMIT', '256M');
Angka kedua adalah batas memori maksimum yang menentukan total memori yang tersedia untuk PHP sendiri. Angka pertama adalah memori untuk WordPress yang berjalan dalam batas PHP yang lebih besar. Batas maksimum memori PHP harus sama dengan atau lebih tinggi dari batas memori aplikasi WordPress.
php.ini
Cara lain untuk menentukan batas memori maksimum PHP adalah dengan pengaturan di file php.ini
yang terletak di folder WordPress Anda:
batas_memori = 256M
Pastikan tidak ada titik koma di awal baris! Dan perhatikan, php.ini
hanya akan memengaruhi instance WordPress (atau aplikasi PHP lainnya) yang berjalan di dalam atau di bawah folder tempat file php.ini
berada. Jika Anda memiliki akses ke server atau root web, file php.ini
File php.ini
yang terletak di sana akan mengatur pengaturan lingkungan untuk semua aplikasi PHP kecuali mereka memiliki file php.ini
sendiri yang menentukan kondisi yang berbeda.
.htaccess
Cara ketiga untuk menentukan batas memori PHP adalah melalui file .htaccess
di folder WordPress Anda jika Anda menggunakan Apache atau Litespeed sebagai server HTTP Anda. Seperti contoh di atas, .htaccess harus memiliki baris tanpa komentar seperti ini untuk menetapkan batas maksimum PHP sebesar 256 MB:
php_value memory_limit 256M
Kesalahan dalam sintaks pengaturan aplikasi dan server di wp-config.php
, php.ini
, dan .htaccess
juga dapat menyebabkan WSOD. Anda mungkin perlu memperbaiki atau menggantinya secara manual dengan default aslinya jika merusak situs Anda. Jika Anda menggunakan server web Apache atau Litespeed, file .htaccess
yang mengatur cara kerjanya dapat diubah oleh banyak plugin WordPress. Kesalahan yang diperkenalkan di salah satu file ini dapat memunculkan WSOD dan menurunkan situs Anda.
4. Server HTTP Anda Menerjang
HTTP (atau HTTPS bentuk terenkripsi dan aman) adalah protokol transfer hypertext yang membuat server web menjadi server web. Ini adalah bagaimana server menyajikan halaman web (dokumen HTTP) ke klien (seperti browser) berdasarkan permintaan.
Server HTTP yang umum digunakan untuk situs WordPress adalah Apache, Litespeed, dan NGINX. Layar kesalahan mereka terlihat sedikit berbeda dan mungkin berbeda dalam cara browser menampilkannya, tetapi semuanya melaporkan kode kesalahan HTTP yang sama.
Kesalahan HTTP 500, juga dikenal sebagai Kesalahan Server Internal, menunjukkan bahwa ada masalah tak terduga dengan server HTTP Anda yang mencegahnya memenuhi permintaan HTTP. Kode kesalahan server 5xx lainnya, terutama 502 (Gateway Buruk), 503 (Layanan Tidak Tersedia), dan 504 (Gateway Timeout), menunjukkan server Anda kelebihan beban atau tidak dapat diakses. Kesalahan internal 500 adalah penyebab kerusakan pada server yang menghentikannya mengembalikan halaman/dokumen yang diminta.
Browser Anda mungkin memberikan tampilan uniknya sendiri pada layar kesalahan HTTP, dan mungkin menampilkan kode kesalahan khusus sendiri. Google Chrome (dan peramban berbasis Chromium lainnya) mencantumkan dan menjelaskan semua kode kesalahannya sendiri secara internal jika Anda menjelajah ke chrome://network-errors/
di bilah alamat saat menggunakan Chrome.
Masalah Sisi Server
Perangkat lunak server HTTP yang umum digunakan untuk situs WordPress termasuk Apache, Litespeed, dan NGINX. Banyak host WordPress menggunakannya dengan caching untuk memaksimalkan kinerja.
Jika penyegaran keras browser Anda atau menghapus cookie dan cache browser Anda tidak menghilangkan layar 500 kesalahan, Anda mungkin mengambil beberapa file cache sisi server yang buruk. Caching sisi server dapat menyebabkan banyak kebingungan saat tidak berfungsi dengan baik, jadi Anda juga harus mencoba menghapusnya. Panel kontrol hosting atau antarmuka admin WordPress Anda mungkin memiliki kontrol pembersihan cache.
Penyebab umum kesalahan HTTP 500 dapat mencakup kondisi sisi server berikut:
- Batas memori PHP telah terlampaui.
- Kesalahan PHP lainnya saat PHP tidak diatur untuk menampilkan kesalahan.
- Izin tidak cukup untuk mengakses file dan folder server.
- Kesalahan sintaks pada file konfigurasi .htaccess.
Kami telah membahas batas memori PHP dan cara meningkatkannya. Kami akan menggali debugging PHP di bagian selanjutnya di bawah ini.
Izin yang salah seharusnya tidak terjadi pada hosting WordPress modern yang dikelola, tetapi umum terjadi pada hosting bersama tradisional. File harus diatur ke 664 atau 644, folder harus diatur ke 775 atau 755, dan wp-config.php harus diatur ke 660, 600, atau 644. Pelajari lebih lanjut tentang mengubah izin file di WordPress.org.
Jika Anda telah membuat perubahan pada file .htaccess Anda atau menggunakan plugin (sering kali atau caching) yang mengubahnya, Anda mungkin perlu meninjau kesalahannya, memulihkannya, atau membuat ulang file .htaccess baru yang berfungsi. Pelajari lebih lanjut tentang .htaccess
di WordPress.org.
Masalah Sisi Klien
Kesalahan HTTP 500 juga dapat disebabkan di sisi klien (di browser Anda) oleh kondisi lain:
- Pengaturan browser salah.
- Cache yang rusak.
- File JavaScript rusak yang berjalan di browser Anda.
- masalah konektivitas internet.
Coba muat situs Anda di browser lain untuk menghilangkan masalah browser Anda saat ini. Jika Anda memiliki masalah browser, coba atur ulang ke pengaturan default. Nonaktifkan ekstensi atau plugin browser apa pun yang telah Anda pasang untuk melihat apakah mereka berinteraksi dengan buruk dengan situs Anda.
Jika masalah Anda terkait dengan file cache yang buruk, area admin WordPress yang tidak di-cache mungkin masih dapat diakses oleh Anda. Jika Anda masih dapat masuk ke antarmuka admin WordPress, Anda mungkin dapat menggunakan sakelar pembersih cache di sana atau mencoba langkah pemecahan masalah tambahan yang dibahas di bawah.
Mungkin juga kesalahan HTTP 500 disebabkan oleh masalah dengan database, masalah dengan plugin atau tema di situs WordPress, atau masalah dengan WordPress itu sendiri.
Untuk memecahkan masalah kesalahan HTTP 500, Anda harus mengaktifkan pencatatan kesalahan untuk server HTTP dan PHP Anda. Kemudian periksa kesalahan apa yang muncul di keduanya. Anda juga dapat memeriksa dan berpotensi meningkatkan batas memori PHP, menonaktifkan plugin, dan beralih ke tema default untuk melihat apakah salah satu dari tindakan ini dapat memulihkan situs Anda.
Kami akan membahas langkah-langkah ini secara lebih mendetail di bawah. Jika mengikuti mereka tidak menghilangkan kesalahan 500, hubungi tim dukungan host web Anda untuk bantuan lebih lanjut.
Ketika WordPress Benar-Benar Mati
Jika Anda mendapatkan layar yang benar-benar putih di setiap halaman depan dan belakang situs WordPress Anda tanpa umpan balik kesalahan sama sekali, itulah pengalaman WSOD lengkap. Anda bisa mendapatkan beberapa pesan kesalahan dan informasi diagnostik jika Anda tahu cara mengakses log kesalahan PHP dan log server HTTP. Mengaktifkan debugging PHP untuk WordPress adalah pilihan lain. Host Anda mungkin memiliki beberapa alat untuk membuat proses debug lebih mudah diakses oleh Anda. Tetapi jika bukan itu masalahnya, Anda cukup menelusuri daftar obat untuk WSOD umum ini sampai Anda menemukan solusinya.
Daftar Periksa Utama untuk Mengatasi Masalah dan Memperbaiki Layar Putih Kematian WordPress
Untuk memperbaiki White Screen of Death WordPress, melalui langkah-langkah berikut akan membawa Anda ke solusi. Mereka diatur dalam urutan penyebab WSOD paling umum seperti yang saya alami, tetapi Anda dapat mencobanya dalam urutan apa pun.
Sangat masuk akal untuk memprioritaskan solusi yang tampaknya paling relevan dengan situasi khusus Anda.
Langkah error logging dan debugging (# 2) adalah yang paling teknis, tetapi menyeluruh dan akan selalu memberi tahu Anda apa yang menyebabkan WordPress berhenti.
Saya telah menyediakan tautan ke beberapa plugin gratis yang dapat menjadi alat diagnostik dan perbaikan yang berguna. Anda juga dapat menemukan Keamanan iThemes sangat membantu untuk fitur pemindaian dan perbaikan basis datanya, serta deteksi perubahan file. Ia bahkan memiliki alat server untuk melihat lebih dalam pada pengaturan dan kemampuan server Anda.
Sebagai upaya terakhir, cadangan terbaru yang bagus akan membuat situs Anda kembali online dalam kondisi baik terakhir yang diketahui. Backup Buddy adalah plugin terbaik untuk peran ini.
Bersihkan Cache dan Cookie Peramban Anda
Halaman cache situs Anda di browser dan di server Anda dapat menunjukkan sesuatu yang berbeda dari yang sebenarnya terjadi. Pastikan Anda melihat apa yang ditampilkan WordPress kepada pengunjung baru situs Anda.
Pertama, bersihkan cache dan cookie browser Anda. Ini akan mengakhiri sesi pengguna Anda jika Anda masuk ke WordPress atau situs lain sehingga Anda melihatnya seperti pengunjung lainnya.
Selanjutnya, gunakan panel hosting Anda dan admin WordPress (jika tersedia) untuk menghapus semua cache sisi server yang dibuat oleh host Anda dan plugin cache WordPress. Coba matikan semua cache situs dan server Anda. Lakukan penyegaran keras di browser Anda. Jika itu menyelesaikan masalah, masalahnya mungkin Anda mengaktifkan pengaturan cache yang tidak berfungsi di sistem Anda. Melalui proses eliminasi, Anda dapat mengidentifikasi mana yang berfungsi dan mana yang tidak.
2. Cari Kesalahan PHP
Kode PHP di inti WordPress, tema, atau plugin dapat menghasilkan kesalahan fatal yang akan membuat WordPress menyerah dengan White Screen of Death.
Untuk mendapatkan informasi selengkapnya tentang kesalahan fatal PHP dan penyebabnya, Anda dapat mengaktifkan pelaporan kesalahan PHP dan mengirimkannya ke layar, file log, atau keduanya. Kesalahan fatal kemungkinan besar akan mengarah ke sumber WSOD.
Sebagai aplikasi web berbasis PHP, WordPress memiliki sistem pelaporan diagnostiknya sendiri untuk debugging yang membantu Anda memanfaatkan fungsi error-logging PHP. Untuk mengaktifkan dan mengontrolnya, pastikan ada baris di wp-config.php
yang bertuliskan:
definisikan('WP_DEBUG', benar);
Anda mungkin perlu menambahkannya atau mengubah nilainya dari false menjadi true. Ini memberitahu WordPress untuk mengaktifkan debugging PHP.
Anda juga dapat mengambil jalan pintas dengan menginstal dan mengaktifkan plugin WP Debugging. Ini akan mengaktifkan debugging PHP untuk WordPress tanpa Anda harus memodifikasi wp-config.php
sendiri secara langsung.
Parameter wp-config.php
tambahan yang ditunjukkan di bawah ini akan mencetak keluaran debug ke layar sebagai HTML dan file bernama "error_log" secara default:
definisikan( 'WP_DEBUG_DISPLAY', benar); tentukan('WP_DEBUG_LOG', benar);
Mungkin juga bermanfaat untuk memaksa WordPress menggunakan versi CSS dan dependensi JavaScript yang tidak dioptimalkan jika ada kemungkinan mereka menyebabkan masalah:
definisikan( 'SCRIPT_DEBUG', benar);
Plugin Debug Bar adalah alat tambahan dan pelengkap yang berguna. Ini akan menunjukkan kepada Anda data debug dalam antarmuka yang bagus.
Agar hal ini terjadi, di php.ini
harus ada baris yang memberikan konstanta error_reporting
nilai selain NONE
, seperti error_reporting = E_ALL
. Seharusnya tidak ada tanda titik koma pada baris ini; yang membuatnya menjadi komentar daripada pengaturan aktif. Catatan Anda akan mendapatkan setiap kesalahan PHP, peringatan, dan pemberitahuan jika Anda menggunakan E_ALL
. Gunakan nilai yang berbeda seperti E_ERROR
untuk hanya mencatat kesalahan runtime fatal yang menyebabkan WordPress mogok.
3. Periksa Konflik Tema dan Plugin
Debugging untuk kesalahan PHP seperti yang dijelaskan pada langkah sebelumnya akan mengarahkan Anda ke file tema atau plugin yang jelas sebagai sumber WSOD Anda. Anda juga dapat menutupnya dengan pendekatan proses eliminasi yang kurang teknis.
Tema Pemecahan Masalah
White Screen of Death sering kali disebabkan oleh konflik antara tema dan/atau plugin WordPress. Untuk mengidentifikasi sumber konflik, Anda dapat mencoba menonaktifkan semua plugin Anda dan beralih ke paket tema default saat ini yang tidak dimodifikasi dengan inti WordPress, seperti Twenty Twenty-Three.
Mulailah dengan tema — ini yang paling sederhana untuk diuji. Jika mengalihkan tema aktif Anda ke tema default yang dikenal baik dan tidak dimodifikasi membuat situs Anda kembali online, Anda tahu masalah Anda ada pada tema yang Anda gunakan.
Lihatlah file functions.php
tema Anda jika ada. Jika Anda baru saja mengubahnya, kemungkinan itu adalah sumber kesengsaraan Anda. File functions.php
adalah tempat kode fungsi khusus ditambahkan untuk digunakan dengan tema saat diaktifkan. Kesalahan kode dan sintaks yang buruk di sini akan memberi Anda WSOD.
Plugin Pemecahan Masalah
Anda dapat menonaktifkan plugin tanpa akses ke admin WordPress melalui baris perintah/SSH atau SFTP hanya dengan memindahkan folder plugin dari folder /wp-content/plugins/
untuk sementara. Praktik saya adalah membuat subfolder plugin yang disebut "A" sehingga muncul pertama kali di direktori /plugins
yang diurutkan berdasarkan abjad. Lalu saya memindahkan semua folder plugin lainnya ke “A.”
Setelah Anda selesai melakukannya, muat ulang situs Anda. WordPress akan berperilaku seolah-olah semua plugin telah hilang. Mereka masih diinstal tetapi dinonaktifkan. Jika Layar Putih Kematian hilang, Anda dapat mencoba mengaktifkan kembali plugin dan tema Anda satu per satu, segarkan beranda Anda setiap kali untuk melihat mana yang menyebabkan situs Anda mogok.
Meks Quick Plugin Disabler adalah alat praktis yang dengan cepat menonaktifkan semua plugin aktif dan kemudian mengaktifkannya kembali dari dalam admin WordPress atas perintah Anda.
4. Perbaiki File Inti yang Rusak
WSOD Anda mungkin merupakan konsekuensi dari file inti WordPress yang rusak. Meskipun ini tidak mungkin, sangat mudah untuk menginstal ulang versi terbaru WordPress dengan cepat dengan satu klik di area Pembaruan Dasbor WordPress. Ini tidak akan merusak salah satu plugin, tema, atau konten Anda yang sudah ada, jadi ini adalah cara yang baik dan mudah untuk mengonfirmasi bahwa file inti Anda baik-baik saja.
Jika tidak ada langkah di atas yang membantu, WSOD mungkin disebabkan oleh masalah dengan lingkungan server Anda yang berada di luar jangkauan Anda. Dalam hal ini, Anda mungkin perlu menghubungi penyedia hosting Anda untuk mendapatkan bantuan. Sebagai upaya terakhir, Anda juga dapat mengembalikan situs Anda ke status "barang terakhir yang diketahui" dengan memulihkan cadangan.
Cara Mencegah WSOD — Saran untuk Pemilik dan Pembuat Situs WordPress
WordPress bekerja dengan baik — dan tiba-tiba Anda mendapatkan Layar Putih Kematian!
Ini mungkin karena ANDA mengubah sesuatu yang penting untuk fungsi WordPress.
Jika Anda menggunakan akun hosting WordPress terkelola yang solid dengan Liquid Web atau Nexcess yang dikonfigurasi dengan benar dengan sumber daya yang memadai untuk hal-hal yang Anda lakukan dengannya, 99% cara Anda dapat merusak WordPress dengan WSOD dapat dihindari.
Masalahnya adalah pemilik situs tidak menghindari praktik ini!
Apa yang tidak dilakukan
- Pengodean Koboi. Menambahkan atau mengedit kode fungsional di situs langsung melalui SFTP, baris perintah, atau editor kode dan penyisip skrip di dalam admin WordPress. Satu kesalahan kecil akan membuat situs down. Mengubah file konfigurasi seperti
.htaccess
danwp-config.php
juga dapat membuat situs down. Kerjakan pengujian lokal atau situs pementasan langsung (tetapi bukan publik). - Menginstal Tema, Plugin, dan Ekstensi yang Meragukan. Menginstal perangkat lunak berkualitas rendah atau bahkan nulled ke situs langsung mengundang masalah. Cukup menambahkan terlalu banyak hal sekaligus dapat mempersulit untuk menentukan apa yang akhirnya merupakan perubahan yang merusak. Mirip dengan pengkodean koboi, menginstal produk kode baru ke situs langsung berisiko. Uji dengan baik di situs lokal atau pementasan pribadi terlebih dahulu.
- Caching yang rumit. Ada beberapa jenis caching sisi server yang mungkin ditawarkan host Anda yang mungkin tidak cocok dengan semua plugin caching dan pengoptimalan kinerja. Saat Anda menerapkan metode atau pengaturan caching baru, uji dengan hati-hati pada lingkungan lokal dan pementasan sebelum menerapkan perubahan ke situs aktif.
- Memperbarui Semuanya Sekaligus. Anda dapat memperbarui banyak tema dan plugin sekaligus. Biasanya ini berfungsi, tetapi jika server Anda habis waktu, Anda mungkin terjebak dalam mode pemeliharaan. Selain itu, kode yang baru diperbarui dapat menimbulkan bug, konflik, atau masalah kompatibilitas baru. Jika ini terjadi dan situs Anda mati, akan lebih sulit untuk mengidentifikasi sumber masalahnya. Jumlah itemnya bisa berapa saja jika Anda memperbarui beberapa tema, plugin, dan ekstensi sekaligus. Kode yang diperbarui dapat diuji secara lokal dan di situs pementasan langsung sebelum meluncurkannya di situs publik utama Anda.
Kiat untuk Hidup Tanpa WSOD
WSOD dapat terjadi pada situs WordPress mana pun, tetapi tidak perlu dikhawatirkan. Mengikuti tip dalam panduan ini dapat membantu Anda mengidentifikasi masalah dan memperbaikinya dengan cepat sebelum pengunjung situs Anda menyadarinya.
Masalah dengan situs WordPress menggarisbawahi pentingnya pemeliharaan dan perawatan yang tepat. Lebih baik daripada bereaksi terhadap WSOD, Anda dapat belajar bekerja di WordPress dengan cara yang tidak akan pernah memaparkan pengunjung Anda ke pesan kesalahan dan layar kosong.
Buat perubahan Anda dengan hati-hati dan sengaja. Tangani WSOD potensial Anda dalam pengujian lokal atau lingkungan pementasan. Ini adalah alat dan fitur standar untuk sebagian besar host WordPress yang dikelola saat ini. Jika Anda mengikuti praktik dasar dan terbaik ini, Anda tidak perlu khawatir tentang White Screen of Death WordPress.
Plugin Keamanan WordPress Terbaik untuk Mengamankan & Melindungi WordPress
WordPress saat ini menguasai lebih dari 40% dari semua situs web, sehingga telah menjadi sasaran empuk bagi peretas dengan niat jahat. Plugin iThemes Security Pro menghilangkan dugaan keamanan WordPress untuk memudahkan mengamankan & melindungi situs web WordPress Anda. Ini seperti memiliki staf pakar keamanan penuh waktu yang terus memantau dan melindungi situs WordPress Anda untuk Anda.
Dan Knauss adalah Generalis Konten Teknis StellarWP. Dia adalah seorang penulis, guru, dan pekerja lepas yang bekerja di sumber terbuka sejak akhir 1990-an dan dengan WordPress sejak 2004.