3

我的托管公司告诉我,Python 安装在他们的服务器上。我将如何使用它来输出一个简单的 HTML 页面?目前这只是一个学习练习,但有一天我想以与我目前使用 PHP 相同的方式使用 Python。

4

4 回答 4

3

当我使用共享主机时,我发现如果我将文件重命名为 .py 并在其前面加上 shebang 行,那么它将作为 Python 执行。

#!/usr/bin/python

可能是非常糟糕的做法,但它确实有效。不过,不要指望能够用它吐出任何广泛的网络应用程序。

于 2009-07-29T12:24:50.427 回答
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>"

显然,您返回什么或如何生成它取决于您:正如我所说,对于更复杂的页面,模板引擎可能有用。

更复杂的方法是利用更完整的框架,例如pasteturbogears,但如果您只想输出一两个静态页面,这可能是多余的。

于 2009-07-29T11:57:11.993 回答
2

如果您的服务器正在运行 Apache HTTP 服务器,那么您需要安装mod_wsgimod_python 之类的东西并作为模块运行(您的服务器签名可能会告诉您这一点)。

运行后,您可能需要将处理程序添加到您的 apache 配置中,或者可能会设置默认值。

之后,查看您正在运行的模块的中间件的文档,然后可能继续使用 Django 之类的东西。

于 2009-07-29T11:58:08.183 回答
1

你不能像 PHP 那样“以同样的方式”使用它。然而,有很多方法可以像 Python 一样做到这一点。

看看 Turbogears 或 Django 之类的。或者 BFG 你想要一些简约的东西,或者 WSGI(通过 mod_wsgi)如果你想直接进入基础。

http://www.djangoproject.com/

http://bfg.repoze.org/

http://turbogears.org/

http://www.wsgi.org/wsgi/

于 2009-07-29T12:22:48.210 回答