嗯,用很短的時間寫這樣一篇短文,介紹對一個基于Django編寫的Web應用做故障排除的第一步。咱們分兩種情況來看。
第一種情況,在開發過程中用
runserver
在本地啟動了一個開發伺服器。Django生成的
settings
檔案裡已經預設把
DEBUG
模式打開。一旦在調試運作Web應用中遇到任何的代碼執行錯誤,你都會得到一個完整的traceback頁面,裡面提供了足夠詳細的資訊供你檢視出錯原因以及定位錯誤在哪一行代碼。
第二種情況,應用已經以部署的方式運作在某個環境中。一旦遇到HTTP 500錯誤,也就是
Internal Server Error
,那麼需要做的就是手動打開
DEBUG
模式。找到部署時指定的
settings
檔案,設定
DEBUG = True
。重新開機服務,重複重制錯誤的步驟檢視traceback頁面即可。
請注意,除非真的允許,否則不要直接在生産環境中調試故障,以免影響正常的業務運轉。
簡單來說,通常情況下會至少多準備一套環境用來測試包括安裝、配置和各項功能等。這套環境應該盡可能的與生産環境一緻。如果遇到前面提到的第二種情況,就要用到這套環境進行錯誤重制乃至調試了。當然如果你在本地有可以運作應用的開發環境,也可以快速地在本地重制錯誤和調試。