在我的托管上运行Python脚本
我刚开始学习网页开发和Python。因为我还不太会用专业术语提问,所以我简单总结一下我需要做的事情:
我有一个小的测试Python CGI脚本,我把它上传到了/home/username/pyscripts,这个位置在/home/username/domain.com的上面。
我需要一个可以在网址栏输入的链接,这样就能执行这个脚本,并在浏览器中显示内容。
有人能告诉我是否需要创建一个HTML文件吗?如果需要的话,怎么让它指向这个Python脚本?我的域名文件夹里安装了WordPress,我的主机是DreamHost的共享主机。
下面是我的脚本:
#! /usr/bin/python
print 'Content-type: text/html'
print ''
print 'Hello, World!
3 个回答
梦主机是支持Python的。你需要确认他们是否提供可以用来部署的命令行访问。你只需要创建一个.py文件,然后运行它。
接着可以考虑使用Django或者Jinja2这样的框架。这些框架让创建网页应用变得简单。
Heroku是一个很好的地方,可以用来托管Python脚本。
前提条件
pythonscripts.py
procfile
requirements.txt
添加、提交并推送脚本到Heroku应用后,只需在终端运行以下命令即可执行脚本。
heroku run python your_scripts.py
如果你想定时运行这些脚本,Heroku提供了很多附加功能。你只需在Heroku上搜索一下就可以找到。
通常,你需要把你的Python脚本放在/home/username/bin/这个文件夹里。我不太确定你的网络主机是否允许你在/bin文件夹之外运行Python脚本(通常情况下是不允许的),但如果可以的话,你可以把/pyscripts文件夹替换掉。
这个网址看起来会像这样:www.domain.com/bin/mypythonscript.py
或者如果你的网络主机支持的话,使用pyscripts文件夹:www.domain.com/pyscripts/mypythonscript.py
你不需要创建一个HTML文件,因为你在Python脚本中打印的第一行内容会告诉用户的浏览器把脚本的输出当作HTML文件来显示。你只需在浏览器中输入你的Python脚本的URL,然后服务器会运行这个脚本,并把结果输出为文本/HTML文件,浏览器会读取并显示这些内容。
另外,别忘了——在你把Python脚本上传到网络主机的正确文件夹后,你需要给这个脚本文件设置执行/读取/写入权限,否则它根本无法运行。通常这可以通过你的上传工具,比如Filezilla,或者使用像chmod这样的命令来完成。