欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Apache同时支持PHP和Python的配置方法

程序员文章站 2023-01-28 20:18:55
最近开始学着用python+tornado+mongodb写网站,兴起写了一个博客,觉得很有意思所以想挂在服务器上发布出去找大家一起玩。这个时候就遇到了问题。 服务器是w...

最近开始学着用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    #这是你要解析的网站地址
serveradmin
proxyrequests off
<proxy *>
order deny,allow
allow from all
</proxy>
proxypass /    #这里是你的python站点的地址
proxypassreverse /   #同上
</virtualhost>

3. 重启 apache

以上就是我的成功案例。

网上还查到一个方法是通过nginx配置反向代理,我试了一个多小时然后放弃了。之前没接触过nginx,所以出了问题也不知道该怎么解决。其中让我气得要吐血的一个问题是:

nginx文件夹始终为“只读”,怎么改也改不了……导致nginx.exe无法运行……
要是哪位朋友有解决方案,望不吝赐教。

关于反向代理的初步认识:

以我的网站为例,博客运行在服务器本地8002端口,即 。我要解析的域名为 。

由于服务器环境为apache,所以外面无法直接访问服务器上未在apache中配置的某个端口,所以需要进行反向代理的配置。

配置好反向代理之后,当用户访问 页面时,服务器apache收到请求,将其转换为 交给python处理,并将python处理出的结果返回,这样用户就看到了正确的页面。

(今天下午乱查资料后的简单理解,望对“反向代理”有正确深入理解的朋友指教。)

自学最痛苦的是碰到困难查资料很难直接查到有用的资料,废话看了一大堆却没有一个明确的解决方案。我个人确实属于那种不认真学习的,喜欢拿过什么来最好能直接就用。所以最近我在总结一些自学过程中的经验,将以解决方案(+学习反思)的形式整理成文,慢慢分享出来。

希望我的总结能够给其他自学者一些实际的帮助。