【问题标题】:End of script output before headers error with Python Script在 Python 脚本出现标题错误之前脚本输出结束
【发布时间】:2019-04-23 11:13:45
【问题描述】:

我已经阅读了多篇关于此的 SO 帖子,但似乎无法使其正常工作。这是我第一次在 Apache 上使用 Python,因此我将不胜感激!

所以最终,我试图在我的 htdocs 中运行 Python 脚本,但我似乎无法让简单的 Python 脚本在 XAMPP 上运行。我不断收到 500 错误:

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!
"""
)

【问题讨论】:

  • 尝试用 print("Content-type: text/html\n\n") 替换第一行
  • @MadisonCourto 我尝试替换它并没有帮助
  • @Sam 查看 Apache 编写的错误日志。它将为您提供有关导致 500 错误的确切原因的更多信息。它通常存储在 /var/log/apache2/error.log 之类的地方
  • @RobBricheno [2018 年 11 月 20 日星期二 17:49:06.593901] [cgi:error] [pid 47854] [client ::1:50462] AH01215: (13)Permission denied: exec of '/ Applications/XAMPP/xamppfiles/htdocs/myurl.py' 失败:/Applications/XAMPP/xamppfiles/htdocs/myurl.py [Tue Nov 20 17:49:06.595547 2018] [cgi:error] [pid 47854] [client :: 1:50462] 标头之前的脚本输出结束:myurl.py
  • @RobBricheno 好像我没有正确的权限,对吧?我该如何改变?

标签: python xampp


【解决方案1】:

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

第一个错误是:

[2018 年 11 月 20 日星期二 17:49:06.593901] [cgi:error] [pid 47854] [client ::1:50462] AH01215: (13) 权限被拒绝:执行 '/Applications/XAMPP/xamppfiles/htdocs/myurl.py' 失败: /Applications/XAMPP/xamppfiles/htdocs/myurl.py [11 月 20 日星期二 17:49:06.595547 2018] [cgi:error] [pid 47854] [client ::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] [client ::1:50555] AH01215:python3:没有这样的文件或目录: /Applications/XAMPP/xamppfiles/htdocs/myurl.py [11 月 20 日星期二 17:59:04.720884 2018] [cgi:error] [pid 48715] [client ::1:50555] 结束 标题前的脚本输出:myurl.py

相关部分是:

python3: No such file or directory

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-03
    • 1970-01-01
    • 2014-08-05
    • 2014-04-13
    • 1970-01-01
    • 2018-05-30
    • 2013-12-01
    • 2015-04-04
    相关资源
    最近更新 更多