网上找了好多天,试了好多的方法,并不能解决我的问题(也许是nginx方面的知识太过贫乏😔);功夫不负有心人,终于找到一个方法可以解决我的问题了😊


先说一下我的环境

  • 远程服务器-->安装了frp,配置文件frps.ini
  • 本地局域网内服务器-->安装了frp,配置文件frpc.ini(当然还包括了其他web服务的全部)

1、修改frpc.ini

在frpc.ini中加入proxy_protocol_version = v2

重新启动frp/home/pi/frp/frpc reload -c /home/pi/frp/frpc.ini

或者重启内网服务器

这时候打开web页面,你会发现无法请求到数据,页面打不开,我们还需要修改nginx的配置

2、修改nginx配置

找到站点配置信息的那段server,修改为如下

这里的192.168.3.22是内网服务器ip,需要改成自己的

server
{
    listen 80 proxy_protocol;
    listen 443 ssl http2 proxy_protocol;
    server_name 192.168.3.22 www.wangxingyi.top;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/192.168.3.22/;
    
    ...
    
    ###############
    set_real_ip_from 192.168.3.22;
    set_real_ip_from 127.0.0.1;
    #real_ip_header X-Forwarded-For;
    real_ip_header proxy_protocol;
    real_ip_recursive on;
    ###############
    access_log  /www/wwwlogs/192.168.3.22.log;
    error_log  /www/wwwlogs/192.168.3.22.error.log;
}


重点是红框的部分


最后重载nginx服务即可

END
Last modification:September 26th, 2021 at 06:45 pm
如果觉得我的文章对你有用,请随意赞赏