AH01215: (8) Exec format error: exec of '/var/www/python/hello.py' failed: /var/www/python/hello.py

人走茶凉 提交于 2021-01-27 07:53:18

问题


I am trying to run python as CGI in apache server. Python version is 2.7.12. Here is my apache conf file

<VirtualHost *:80>
   <Directory /var/www/python>
   Options +ExecCGI
   AddHandler cgi-script .cgi .py
   Order allow,deny
   Allow from all
   </Directory>
   DocumentRoot /var/www/python
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

My python script /var/www/python/hello.py looks like this

print('Content-Type: text/html; charset=utf-8\n')
print("Hello, World!")

When I access the url I get the Internal Server Error, I got the details from error.log file and it says ,

[Sun Dec 11 09:53:40.694909 2016] [cgi:error] [pid 6812] [client 127.0.0.1:36282] AH01215: (8)Exec format error: exec of '/var/www/python/hello.py' failed: /var/www/python/hello.py [Sun Dec 11 09:53:40.695312 2016] [cgi:error] [pid 6812] [client 127.0.0.1:36282] End of script output before headers: hello.py

PHP scripts are still working fine on the server. How to fix this issue with py files ?


回答1:


Your script needs a "shebang" line, something like

#!/usr/bin/env python

as the first line. Also, make sure the script is executable with chmod.




回答2:


You should use:

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
print('Content-Type: text/html; charset=utf-8\n')
print("ąęśłłłóąś UTF answer")


来源:https://stackoverflow.com/questions/41082302/ah01215-8-exec-format-error-exec-of-var-www-python-hello-py-failed-var

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!