Run python on windows apache: Difference between revisions

From LemonWiki共筆
Jump to navigation Jump to search
Line 2: Line 2:


== Troubleshooting ==
== Troubleshooting ==
=== Error: 直接看到 Python 程式碼 ===
檢查 Apache 設定步驟 [http://barloslee.blogspot.tw/2013/05/windows-apache-python.html Barlos Blog 部落格: 在 Windows 下安裝 Apache + Python]
* Apache 設定檔對應的資料夾 Options 有加上{{kbd | key=<nowiki>ExecCGI</nowiki>}} 該行設定範例 {{kbd | key=<nowiki>Options Indexes FollowSymLinks ExecCGI</nowiki>}}
* Apache 設定檔 AddHandler 部分有加上{{kbd | key=<nowiki>.py</nowiki>}} 該行設定範例 {{kbd | key=<nowiki>AddHandler cgi-script .cgi .py</nowiki>}}
=== Error message: End of script output before headers: python_script.py (Server 500 error) ===
=== Error message: End of script output before headers: python_script.py (Server 500 error) ===
# 檢查 Apache 設定步驟 [http://barloslee.blogspot.tw/2013/05/windows-apache-python.html Barlos Blog 部落格: 在 Windows 下安裝 Apache + Python]
檢查 Python 程式第一行的宣告 {{kbd | key=<nowiki>#!C:/Python33/python</nowiki>}}  
#* Apache 設定檔對應的資料夾 Options 有加上{{kbd | key=<nowiki>ExecCGI</nowiki>}} 該行設定範例 {{kbd | key=<nowiki>Options Indexes FollowSymLinks ExecCGI</nowiki>}}
* 宣告 {{kbd | key=<nowiki>#!C:/Python33/python</nowiki>}} 代表 {{kbd | key=<nowiki>C:\Python33\python.exe</nowiki>}} 檔案需要存在。
#* Apache 設定檔 AddHandler 部分有加上{{kbd | key=<nowiki>.py</nowiki>}} 該行設定範例 {{kbd | key=<nowiki>AddHandler cgi-script .cgi .py</nowiki>}}
* 但是因為 Python 版本可能更新,需要檢查版號是否正確。例如安裝 Python 3.6 版本,則要改成 {{kbd | key=<nowiki>#!C:/Python36/python</nowiki>}}  
# 檢查 Python 程式第一行的宣告 {{kbd | key=<nowiki>#!C:/Python33/python</nowiki>}}  
* {{exclaim}} 無效的宣告 {{kbd | key=<nowiki>#!C:/Windows/py</nowiki>}}  
#* 宣告 {{kbd | key=<nowiki>#!C:/Python33/python</nowiki>}} 代表 {{kbd | key=<nowiki>C:\Python33\python.exe</nowiki>}} 檔案需要存在。
 
#* 但是因為 Python 版本可能更新,需要檢查版號是否正確。例如安裝 Python 3.6 版本,則要改成 {{kbd | key=<nowiki>#!C:/Python36/python</nowiki>}}  
檢查 Python 程式是否有錯誤
#* {{exclaim}} 無效的宣告 {{kbd | key=<nowiki>#!C:/Windows/py</nowiki>}}  
# 檢查 Python 程式是否有錯誤
#* 例如程式碼使用了 package,但是伺服器環境並未安裝該 package
#* 例如程式碼使用了 package,但是伺服器環境並未安裝該 package



Revision as of 14:14, 11 December 2017

Run python on Windows/Apache

Troubleshooting

Error: 直接看到 Python 程式碼

檢查 Apache 設定步驟 Barlos Blog 部落格: 在 Windows 下安裝 Apache + Python

  • Apache 設定檔對應的資料夾 Options 有加上ExecCGI 該行設定範例 Options Indexes FollowSymLinks ExecCGI
  • Apache 設定檔 AddHandler 部分有加上.py 該行設定範例 AddHandler cgi-script .cgi .py

Error message: End of script output before headers: python_script.py (Server 500 error)

檢查 Python 程式第一行的宣告 #!C:/Python33/python

  • 宣告 #!C:/Python33/python 代表 C:\Python33\python.exe 檔案需要存在。
  • 但是因為 Python 版本可能更新,需要檢查版號是否正確。例如安裝 Python 3.6 版本,則要改成 #!C:/Python36/python
  • Icon_exclaim.gif 無效的宣告 #!C:/Windows/py

檢查 Python 程式是否有錯誤

    • 例如程式碼使用了 package,但是伺服器環境並未安裝該 package

References