反向代理实现nginx+apache动静分离

nginx作为中转服务器,端口为80

apache作为动态访问服务器(即访问php文件请求时,需要转发给apache处理),端口为8080

apache虚拟主机根目录指向/usr/local/nginx/html(网站根目录)


修改nginx配置文件location:
在遇到访问php请求时,做请求转发

location ~ \.php$ {
            proxy_pass   <span style="color:#ff0000;">http://</span>192.168.1.100:8080(apache IP地址)
}
注意:这里需要加上http协议

反向代理的测试方案:

在nginx网站的根目录下,修改index.php文件

<?php
echo rand(1,1000);
?>
<img src="logo.png" />

如果修改了nginx中的location对php转发后,再访问index.php时,会直接让你下载,因为nginx已经不支持php的请求


注意:想看反向代理的效果,必须在访问网站的时候,强刷浏览器

最后分别查看nginx和apache访问日志,会发现nginx只记录图片的访问信息,apache只记录了php的访问信息

浏览器使用firebug工具,查看网站文件返回信息,发现不管css、js、php文件,server都是显示nginx

你可能感兴趣的:(反向代理实现nginx+apache动静分离)