簡體   English   中英

如何解決我的Python CGI腳本問題?

[英]How can I troubleshoot my Python CGI script?

我有一個無法運行的Python CGI Webapp,並且我不知道如何開始縮小問題的范圍。 我能做什么?


注意 我真的很感謝Perl這個問題的答案,也希望對Python有一個答案。 有些事情相似,但大多數是不同的。 這是我提出問題的模板,因此,如果您覺得應該以不同的方式提出,請隨時進行編輯。

  1. 檢查服務器的錯誤日志。 例如,在Apache上,路徑可能是/var/log/apache/error.log/var/log/httpd/error_log

  2. 確保您的腳本是可執行的( chmod +x script.py )。

  3. 確保您的腳本有一個she-bang行( #!/usr/bin/env python )。

  4. 有些配置僅允許CGI腳本在/cgi-bin/目錄中執行,您可以通過查看服務器的配置進行確認,或者只是嘗試將腳本移至該目錄中。

  5. 嘗試從命令行( ./script.py )運行腳本。 它應該打印出一些內容並成功退出(如果腳本依賴它們,則可能需要設置一些CGI環境變量)。

  6. 將腳本替換為僅顯示"Content-Type: text/plain\\n\\nHello world"的最小腳本。 這應該告訴您CGI是否在服務器上完全正常工作。

  7. import cgitb; cgitb.enable() 文件頂部(shebang行下方的第一行import cgitb; cgitb.enable()捕獲任何錯誤並向您顯示追溯。 解決問題后,應將其關閉,因為公開此信息可能會帶來安全風險。

如果您無權訪問日志,則需要向服務器管理員尋求幫助,提交支持票等。如果發布正在運行的Web服務器,Web服務器配置的外觀,這也將很有幫助。例如,哪個python版本,您的CGI腳本是什么樣的等等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM