Nginx(三):Nginx整合Apache动静分离

概述:    

    在 Web 服务器中,动态请求是指该请求需要服务器端的程序处理。例如,当用户请求一个PHP脚本文件时,就会调用PHP 处理,并返回该脚本的处理结果。而静态请求不需要程序处理,直接读取文件并返回即可,如HTML、css 、JavaScript 、图片等文件。针对这两种请求各自的特点,可以由 Nginx 提供对外访问,静态请求直接由 Nginx 处理,动态请求转交给 Apache 处理,这样就实现了动静分离。(实质上整合PHP、Apache、Tomcat其实都是做反向代理。

     

配置:

    更改Apache的监听端口,一般80改81(Http),433改8433(Https)

    配置Nginx转发:        

        server {
            listen 80;
            server_name test.com www.test.com;
            root /var/www/www.test.com;
            index index.html index.htm index.php;  
    Location ~\.php?{      
proxy_pass   http://127.0.0.1:81;
proxy_redirect off;   
proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

        }

    传递客户端真实IP:

        Apache 的模块 mod_remoteip 用于检测 REMOTE_ADDR 是否为代理服务器的 IP 地址,如果是则从自定义的 HTTP 消息头中读取客户端 IP 在httpd. conf 中搜索 mod_remoteip ,将模块启用,并指定消息头的名称和代理服务器的 IP 地址

        LoadModule remoteip_module modules/mod_remoteip.so
        RemoteIPHeader X-Client- IP
        RemoteIPinternalProxy 127 .0. 0.1

         完成上述配置后,当Apac h e的mod_ r emo t e ip模块检测到REMOTE_ ADDR 为 127.0 . 0 . 1时,就会用 X - C li e n t - IP 的值 替换 REMOTE_ADDR 的值, 然后清除 X-C lie nt-IP消息头。
    

    



                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值