配置nginx反向代理到apache服务器

 

代理服务器环境: nginx+php

转发目标:apache+php

 

首先配置nginx实现代理转发

  #反向代理
   location /evp/ 
   {
        proxy_pass http://xxx.xxx.xxx.xxx/;
   }

 

接下来测试效果

测试成功,可以访问,但是打开network发现所有php请求都会404

网上查了下

 https://www.cnblogs.com/menghome/p/11106648.html

https://www.cnblogs.com/menghome/p/11106648.html

发现两种说法:

1.用户组不一致

2.修改fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name; 为  $document_root

按推荐修改,还是没有用

 

3.转发过后请求头丢失

在反向代理内添加配置

   #反向代理
   location /evp/ 
   {
        proxy_pass http://xxx.xxx.xxx.xxx/;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;       #获取客户端真实ip
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 获取代理者的真实ip
        proxy_set_header X-Forwarded-Host $host;    # 修改host头
        proxy_set_header X-Nginx-Proxy true;
   }

依旧是无法访问