Ini tidak pernah berlaku sebelum ini. Biasanya ia akan menunjukkan ralat, tetapi kini ia hanya memberi saya Ralat Pelayan Dalaman 500. Sudah tentu sebelum ini, apabila ia menunjukkan ralat, ia adalah pelayan yang berbeza. Sekarang saya berada di pelayan baharu (saya mempunyai akar penuh jadi jika saya perlu mengkonfigurasinya di suatu tempat dalam php.ini saya boleh.) Atau mungkin ia adalah perkara Apache?
Saya telah bersabar dengannya dan hanya memindahkan fail ke pelayan saya yang lain dan menjalankannya di sana untuk mencari ralat, tetapi ia menjadi terlalu membosankan. Adakah terdapat cara untuk menyelesaikan masalah ini?
Menggunakan
php -l
(iaitu "L") daripada baris arahan mengeluarkan ralat sintaks yang boleh menyebabkan PHP membuang ralat status 500. Ia akan mengeluarkan yang berikut:PHP 解析错误:语法错误,第 18 行 中出现意外的“}”
Kecuali
php.ini
文件中的error_reporting
、display_errors
和display_startup_errors
设置。它们应分别设置为E_ALL
和"On"
(尽管您不应该在生产服务器上使用display_errors
,因此禁用此选项并使用 log_errors 相反,如果/当你部署它时)。您还可以在脚本的开头更改这些设置(display_startup_errors
) untuk menetapkannya pada masa jalan (walaupun anda mungkin tidak menangkap semua ralat dengan cara ini):Selepas itu, mulakan semula pelayan.