运行 Python Web 服务器上的脚本
Run Python Script on Web Server
我有一个 web 服务器,我的 cgi-bin 在 0755,我的脚本 return.py 也是 0755。当我的脚本就是这个
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
然后我转到我看到测试的网页...我应该这样做,但是当我将其中任何一个添加到我的脚本时
form = cgi.FieldStorage()
param = form.getvalue("param")
if param:
json.dumps({'success': True, 'message': param })
else:
json.dumps({'success': False, 'message': 'did not receive parameter' })
我收到 500 内部服务器错误,我不确定为什么,我设置了正确的权限,python 是 运行,因为它在我不添加内容时有效多于?我上面的代码有问题吗?还有什么可能导致此问题?
顺便说一句,上面的代码是因为我正在为此制作一个 POST 以及 return 发布的值。只是一个简单的测试用例,但我无法让它工作?
我查看了这份清单,我可以检查的内容,并且一切正常 https://encodable.com/internal_server_error/
提前感谢您的帮助。 :)
编辑
这里是错误日志
[Tue Jun 23 01:35:38.661161 2015] [authz_core:error] [pid 874653] [client 173.34------:51484] AH01630: client denied by server configuration: /home/spencer/public_html/.htaccess
[Tue Jun 23 01:35:38.426745 2015] [access_compat:error] [pid 874653] [client 173.34-----:51484] AH01797: client denied by server configuration: /home/spencer/public_html/error_log
只需更改 shebang,它应该可以工作
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
并假设您将其保存为 test.py 有效
然后你添加下面的部分
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
form = cgi.FieldStorage()
param = form.getvalue("param")
if param:
json.dumps({'success': True, 'message': param })
else:
json.dumps({'success': False, 'message': 'did not receive parameter' })
它给服务器错误
然后将 shebang 更改为
#!/usr/bin/python
它有效.....输入正确的 shebang,生活很轻松
我有一个 web 服务器,我的 cgi-bin 在 0755,我的脚本 return.py 也是 0755。当我的脚本就是这个
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
然后我转到我看到测试的网页...我应该这样做,但是当我将其中任何一个添加到我的脚本时
form = cgi.FieldStorage()
param = form.getvalue("param")
if param:
json.dumps({'success': True, 'message': param })
else:
json.dumps({'success': False, 'message': 'did not receive parameter' })
我收到 500 内部服务器错误,我不确定为什么,我设置了正确的权限,python 是 运行,因为它在我不添加内容时有效多于?我上面的代码有问题吗?还有什么可能导致此问题?
顺便说一句,上面的代码是因为我正在为此制作一个 POST 以及 return 发布的值。只是一个简单的测试用例,但我无法让它工作?
我查看了这份清单,我可以检查的内容,并且一切正常 https://encodable.com/internal_server_error/
提前感谢您的帮助。 :)
编辑
这里是错误日志
[Tue Jun 23 01:35:38.661161 2015] [authz_core:error] [pid 874653] [client 173.34------:51484] AH01630: client denied by server configuration: /home/spencer/public_html/.htaccess
[Tue Jun 23 01:35:38.426745 2015] [access_compat:error] [pid 874653] [client 173.34-----:51484] AH01797: client denied by server configuration: /home/spencer/public_html/error_log
只需更改 shebang,它应该可以工作
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
并假设您将其保存为 test.py 有效 然后你添加下面的部分
#!/usr/bin/perl
import cgi
import json
print "Content-type: text/plain\n\n";
print "testing...\n";
form = cgi.FieldStorage()
param = form.getvalue("param")
if param:
json.dumps({'success': True, 'message': param })
else:
json.dumps({'success': False, 'message': 'did not receive parameter' })
它给服务器错误
然后将 shebang 更改为
#!/usr/bin/python
它有效.....输入正确的 shebang,生活很轻松