我的托管公司告诉我,Python 安装在他们的服务器上。我将如何使用它来输出一个简单的 HTML 页面?目前这只是一个学习练习,但有一天我想以与我目前使用 PHP 相同的方式使用 Python。
4 回答
当我使用共享主机时,我发现如果我将文件重命名为 .py 并在其前面加上 shebang 行,那么它将作为 Python 执行。
#!/usr/bin/python
可能是非常糟糕的做法,但它确实有效。不过,不要指望能够用它吐出任何广泛的网络应用程序。
有很多方法可以做到这一点:假设服务器架构支持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,但如果您只想输出一两个静态页面,这可能是多余的。
如果您的服务器正在运行 Apache HTTP 服务器,那么您需要安装mod_wsgi或mod_python 之类的东西并作为模块运行(您的服务器签名可能会告诉您这一点)。
运行后,您可能需要将处理程序添加到您的 apache 配置中,或者可能会设置默认值。
之后,查看您正在运行的模块的中间件的文档,然后可能继续使用 Django 之类的东西。
你不能像 PHP 那样“以同样的方式”使用它。然而,有很多方法可以像 Python 一样做到这一点。
看看 Turbogears 或 Django 之类的。或者 BFG 你想要一些简约的东西,或者 WSGI(通过 mod_wsgi)如果你想直接进入基础。