2013-07-17 92 views
0

我有兴趣制作一个非常基本的Python webapp,它实际上只是一个表单,它接受一些输入,在该输入上调用Python函数,接收从该函数返回的结果,然后使用网页开发技巧使它们看起来很漂亮。我已经看到了许多使用CherryPy,flask,bottle,web.py的解决方案,所有这些都很棒,但是我还没有看到其中任何一个实际使用Apache的示例。他们似乎都是这个全能的网络服务器框架,这对我来说完全是过度的,而不是我所需要的。我已经在这里运行Apache了,所以不用启动第二个Web服务器,而必须担心让它继续运行,所以我宁愿让Apache整天提供一切服务。Python + mod_wsgi/mod_python + Apache + user's public_html

我们有相当标准http://myserver.com/~user/设置与public_html迪尔斯在/home/user,但对我的生活我无法弄清楚如何创建调用供应并有Python代码实际执行一个Python功能的页面当浏览到http://myserver.com/~user/。现在我们假设mod_python甚至mod_wsgi设置正确......我需要在我的最后做些什么?我是否需要通过一个PHP exec()来调用我的脚本,这对我来说首先要击败mod_python的需求,还是有更优雅的解决方案(实际上使用mod_python)?

回答

0

你的Python脚本的概念是完全错误的。不要像对待PHP脚本,你可以有

<html> 
<?php 
echo "<title>Hello World</title>"; 
?> 
</html> 

mod_php会分析它,并执行PHP代码,以形成最终的HTML页面。

最好说你有Python应用程序,其中mod_pythonmod_wsgi为Apache提供接口(网关)来与你的应用程序进行通信。

如果可以编写没有框架的python web应用程序,我已经被问了很多次了。当然,你可以但你必须处理HTTP会议和骨头,如标题和响应代码。看看http://lucumr.pocoo.org/2007/5/21/getting-started-with-wsgi/

所以我建议使用框架。

如果你不想像deamon那样运行你的应用程序,比如说这个页面http://flask.pocoo.org/docs/deploying/mod_wsgi/。它显示了如何运行Apache应用程序和mod_wsgi

+0

感谢您的链接。我知道它不完全像PHP,但是从框架的所有这些例子中,我知道可以调用一个Python函数而不用PHP或甚至ajax包装它。但是,我有一个问题来自第二个环节......配置是全球性的,对吗?所以这行:'WSGIScriptAlias/var/www/yourapplication/yourapplication.wsgi'将需要为每个'〜user'的每个应用程序添加,对,就像'/home/user/public_html/yourapplication/yourapplication.wsgi '? – dmn

+1

只需使用'WSGIScriptAliasMatch' https://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIScriptAliasMatch。这样你就不需要配置每一个应用程序。 – twil

+0

GOT IT。我会确保我们的系统管理员已经设置好了。非常感谢。 :) – dmn

相关问题