[英]End of script output before headers when using Anaconda Python in Apache
我正在嘗試使用cgi在Ubuntu上運行Ananaconda Python 2.7腳本,但是在var/log/apache2/error.log
出現以下錯誤消息,並出現錯誤500。
No such file or directory: AH01241: exec of '/var/www/html/app/getcapabilities.py' failed
End of script output before headers: getcapabilities.py
以下是我的apache apache2.conf的外觀。
<Directory /var/www/html/*>
Options +ExecCGI
AddHandler cgi-script .py
</Directory>
which python
給我的命令路徑: /home/myuser/anaconda2/bin/python
以下是我的Python文件的外觀。 Python腳本在Windows XAMPP Apache中運行良好。
#!/home/myuser/anaconda2/bin/python
print ("Content-Type: text/xml\n\n")
print ('\n')
print ('\n')
print ('hello')
我也遵循了這一步驟,但是對我沒有用。
如何解決此問題並能夠在網絡瀏覽器上運行python腳本?
該問題是由於Windows和Linux中的行尾差異所致。 該文件以CRLF結尾,應該更改為LF行結尾。 我的文本編輯器Pycharm可以在右下角或在“文件”菜單中對其進行更改,如下所示。 因此,將其更改為Unix和OS X行分隔符可以解決此問題。
有關Pycharm的更多信息,請單擊此鏈接 。
如果使用git,則在提交存儲庫時會自動修復該問題。
編輯:我最近發現,使python文件可執行是必需的。 即使我解決了行尾問題,也遇到了問題,通過選中文件權限中的復選框使文件可執行,從而解決了該問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.