CentOS系统Python3.6的shebang不生效报500错误问题求助
问题原因与解决方案
核心根因
你的测试脚本使用了Python 2专属的print语法,Python 3不兼容该写法,因此指定Python 3作为解释器时运行报错,触发500内部服务器错误,和Python安装、软链接、shebang配置均无关联:
- Python 2中
print是语句,支持直接写print "内容"的格式 - Python 3中
print是内置函数,必须使用print("内容")的带括号格式
验证方法
你可以直接在终端手动执行命令复现报错,确认语法问题:
python3 /var/www/cgi-bin/test2.py # 替换为你实际的脚本路径
运行后会返回明确的语法错误提示:
File "test2.py", line 2 print "Content-type:text/html\r\n\r\n" ^ SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)?
修复方案
将测试脚本修改为适配Python 3的语法即可正常运行:
#!/usr/bin/python3 print("Content-type:text/html\r\n\r\n") print("test")
内容的提问来源于stack exchange,提问作者Wyeknott
相关产品推荐
相关产品推荐

