Apache同时支持PHP和Python的配置方法
投稿:hebedich
最近开始学着用Python+Tornado+MongoDB写网站,兴起写了一个博客,觉得很有意思所以想挂在服务器上发布出去找大家一起玩。这个时候就遇到了问题。
服务器是windows系统,安装的是Apache,所以需要配置Apache,使Apache同时支持PHP和Python。
废话少说,提供有效方案一个,照做即可:
1. 修改 httpd.conf 文件
将下列几个Module前的注释符 # 去掉
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
2. 配置 httpd-vhosts.conf 文件
<VirtualHost *:80>
ServerName http://b06.suosikeji.com #这是你要解析的网站地址
ServerAdmin me@chengkang.pw
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
proxypass / http://127.0.0.1:8002/ #这里是你的python站点的地址
proxypassreverse / http://127.0.0.1:8002/ #同上
</VirtualHost>
3. 重启 Apache
以上就是我的成功案例。
网上还查到一个方法是通过nginx配置反向代理,我试了一个多小时然后放弃了。之前没接触过nginx,所以出了问题也不知道该怎么解决。其中让我气得要吐血的一个问题是:
nginx文件夹始终为“只读”,怎么改也改不了……导致nginx.exe无法运行……
要是哪位朋友有解决方案,望不吝赐教。
关于反向代理的初步认识:
以我的网站为例,博客运行在服务器本地8002端口,即 http://127.0.0.1:8002。我要解析的域名为 http://b06.suosikeji.com。
由于服务器环境为Apache,所以外面无法直接访问服务器上未在Apache中配置的某个端口,所以需要进行反向代理的配置。
配置好反向代理之后,当用户访问 http://b06.suosikeji.com/add 页面时,服务器Apache收到请求,将其转换为 http://127.0.0.1:8002/add 交给Python处理,并将Python处理出的结果返回,这样用户就看到了正确的页面。
(今天下午乱查资料后的简单理解,望对“反向代理”有正确深入理解的朋友指教。)
自学最痛苦的是碰到困难查资料很难直接查到有用的资料,废话看了一大堆却没有一个明确的解决方案。我个人确实属于那种不认真学习的,喜欢拿过什么来最好能直接就用。所以最近我在总结一些自学过程中的经验,将以解决方案(+学习反思)的形式整理成文,慢慢分享出来。
希望我的总结能够给其他自学者一些实际的帮助。
您可能感兴趣的文章:
- 在CentOS 6 中安装WordPress(一) 安装Apache,Mysql, PHP环境
- win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
- PHP脚本内存泄露导致Apache频繁宕机解决方法
- apache集成php5.6方法分享
- Windows系统下Apache、PHP无法启动问题总结
- Apache2.4.x版wampserver本地php服务器如何让外网访问及启用.htaccess
- Windows下Apache + PHP SESSION丢失的解决过程全纪录
- apache You don''t have permission to access /test.php on this server解决方法
- 简单介绍win7下搭建apache+php+mysql开发环境
- win7系统配置php+Apache+mysql环境的方法
- windows下apache搭建php开发环境
- apache和PHP如何整合在一起