如何将Python服务器端与共享主机一起使用?

时间:2009-07-29 11:49:51

标签: python server-side

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

4 个答案:

答案 0 :(得分:3)

当我使用共享主机时,我发现如果我将文件重命名为.py并以shebang行为前缀,那么它将以Python的形式执行。

#!/usr/bin/python

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

答案 1 :(得分: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,但如果您只想输出一两个静态页面,这可能会有点过分。

答案 2 :(得分:2)

如果您的服务器正在运行Apache HTTP服务器,那么您需要安装并运行 mod_wsgi mod_python 等模块(您的服务器签名可能会告诉您)。

运行后,您可能需要在apache配置中添加处理程序,否则可能会设置默认值。

之后,查看正在运行的模块的中间件的文档,然后继续使用像Django这样的东西。

答案 3 :(得分:1)

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

看看Turbogears或Django等。或者,如果你想直接了解基础知识,你想要一些极简主义的东西,或WSGI(通过mod_wsgi)。

http://www.djangoproject.com/

http://bfg.repoze.org/

http://turbogears.org/

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