如何在共享主机上使用Python服务器端?
我的主机公司告诉我,他们的服务器上安装了Python。我该怎么用它来输出一个简单的HTML页面呢?现在我只是想学习一下,但将来我希望能像现在用PHP一样使用Python。
4 个回答
2
有很多方法可以做到这一点:假设服务器的架构支持WSGI标准,那么你可以简单地插入自己的处理程序来生成HTML(如果你想简单一点,可以手动构建一个字符串,或者使用像Mako这样的模板引擎)。
一个WSGI处理程序的例子可能是这样的:
class HelloWorldHandler(object):
def __call__(self, environ, start_response):
"""
Processes a request for a webpage
"""
start_response('200 OK', [('Content-Type', 'text/html')])
return "<p>Hello world!</p>"
显然,返回什么或者如何生成内容是由你决定的:就像我说的,对于更复杂的页面,使用模板引擎可能会更方便。
更复杂的方式是利用一个更完整的框架,比如paste或turbogears,但如果你只想输出一两个静态页面,这可能就有点过于复杂了。
3
当我使用共享主机的时候,我发现如果把文件改名为 .py,并在前面加上一个叫做 shebang 的行,那么这个文件就会被当作 Python 程序来执行。
#!/usr/bin/python
这可能不是个好做法,但确实能实现。不过,别指望用这种方法能开发出复杂的网页应用。
2
如果你的服务器在运行Apache HTTP服务器,那么你需要安装并运行一些东西,比如mod_wsgi或mod_python,这些是作为模块来工作的(你可以通过服务器的签名来查看这些信息)。
一旦这些模块运行起来,你可能需要在Apache的配置文件中添加一个处理器,或者可能已经有默认的设置了。
之后,查看你正在使用的模块的中间件文档,然后你可以继续使用像Django这样的框架。