我已经阅读了许多有关此的SO帖子,但似乎无法使它正常工作。这是我第一次在Apache上使用Python,所以我将很高兴获得帮助!

因此,最终,我试图在htdocs中运行Python脚本,但似乎不能仅在XAMPP上运行简单的python脚本。我不断收到500错误:

python - Python header 出现 header 错误之前,脚本输出结束-LMLPHP

myurl.py

#!/usr/bin/env python3

print("Content-Type: text/html")
print()
print ("""
    <TITLE>CGI script ! Python</TITLE>
    <H1>This is my first CGI script</H1>
    Hello, world!
"""
)

最佳答案

根据讨论,这里存在多个问题,可以通过检查apache编写的error.log然后进行适当的更改来解决。

第一个错误是:


  [2018年11月20日星期二17:49:06.593901] [cgi:error] [pid 47854] [客户端
  ::: 1:50462] AH01215:(13)权限被拒绝:exec of
  '/Applications/XAMPP/xamppfiles/htdocs/myurl.py'失败:
  /Applications/XAMPP/xamppfiles/htdocs/myurl.py [星期二11月20日
  17:49:06.595547 2018] [cgi:error] [pid 47854] [客户端:: 1:50462]结束
  标头之前的脚本输出的示例:myurl.py


这里相关的部分是:

(13)Permission denied: exec of '/Applications/XAMPP/xamppfiles/htdocs/myurl.py' failed


需要在正在执行的.py文件上设置权限,以允许运行apache进程的用户执行脚本。这是使用chmod完成的。

然后,出现另一个错误:


  [2018年11月20日星期二17:59:04.720816] [cgi:error] [pid 48715] [客户端
  ::: 1:50555] AH01215:python3:没有这样的文件或目录:
  /Applications/XAMPP/xamppfiles/htdocs/myurl.py [星期二11月20日
  17:59:04.720884 2018] [cgi:error] [pid 48715] [客户端:: 1:50555]结束
  标头之前的脚本输出的示例:myurl.py


相关部分是:

python3: No such file or directory


这表明系统找不到要执行的python3二进制文件。必须使用python3确定到which python3解释器的正确路径。然后将其编辑到脚本的shebang行中。

关于python - Python header 出现 header 错误之前,脚本输出结束,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53402670/

10-11 22:36
查看更多