网页Python问题

7 投票
3 回答
4946 浏览
提问于 2025-04-16 09:13

有没有人能帮我在Hostgator的共享主机上运行一个Python脚本?我主要是用PHP,但最近对Python产生了兴趣,想试着在网上运行它。我之前运行Python的方式就是用解释器,或者在终端里输入>Python file.py。我试着把一个hello world的文件上传到服务器上,但它只显示了脚本的源代码。我跟Hostgator的客服聊过,他们告诉我需要用一个调度程序,但我找不到相关的例子。我只想知道,怎么才能让浏览器显示一个<p>Hello</p>。

谢谢,如果我说得有点乱,抱歉,我这周一直在网上查这个问题。

3 个回答

0

我对Hostgator不太了解,但你希望你的网页服务器能把你的Python脚本当成一个可执行的CGI脚本来看待。这意味着你需要让这个脚本可以执行,并确保里面有一个#!符号。然后,你可以把它放在cgi-bin文件夹里,或者设置你的服务器,让它识别.py为CGI脚本的文件扩展名。这里有一个简单的示例脚本和一些使用cgi模块的背景知识。

1

简单来说,你需要修改一下你的 .htaccess 文件,这样 Apache(一个常用的服务器软件)才能把 Python 文件当作 CGI 脚本来运行。然后,在你的 Python 脚本开头加上 "#!/usr/bin/python",别忘了输出 HTTP 头信息(否则你会遇到 500 内部错误)。

你可以查看 这篇文章,里面有详细的步骤说明。

9

好吧,我从Hostgator的支持网站上找到了这个

假设你的主机上运行的是Python 2.x,那么你可以按照下面的方式调整链接中的脚本:

#!/usr/bin/python
print "Content-type: text/html\r\n\r\n"
print "<html><head>"
print "<title>CGI Test</title>"
print "</head><body>"
print "<p>Test page using Python</p>"
print "</body></html>"

然后把它放到你的cgi-bin文件夹里,记得设置权限为755。

更新:关于“绕过”cgi-bin文件夹的问题,这要看你的主机套餐允许哪些选项。你可以看看Bottle,这是一个简单的调度器,可以放在一个Python模块里。你可以通过CGI来部署它,

import bottle
# Put your bottle code here, following the docs on the Bottle site
bottle.run(server=bottle.CGIServer)

进一步更新:除了Bottle的文档,我建议你阅读一下关于CGI的Python文档

撰写回答