1. 程式人生 > >除錯web程式時,遇到伺服器500錯誤,怎麼辦?

除錯web程式時,遇到伺服器500錯誤,怎麼辦?

對於web開發者,當程式發到外網(或預釋出)情況下,伺服器預設設定是不會報錯的(錯誤詳情報不出來),此時,若遇到一個請求,報伺服器500錯誤,怎麼排查原因呢?我曾經是程式碼一行一行追蹤,先echo 然後die,定位錯誤原因。今天發現一個辦法:

看下apache log檔案(若沒root許可權可找運維幫忙)。log檔案位置:/var/log/apache2/error.log,log檔案大致內容如下:

造成500錯誤的原因便一目瞭然了。
 ps:  log檔案位置定義在/etc/apache2/sites-available目錄下對應虛擬主機的配置檔案中:如ErrorLog ${APACHE_LOG_DIR}/error.log
     環境變數的定義位置:/etc/apache2/envvars檔案中。