当前位置:论坛首页 > Linux面板 > 求助

【已完成】nginx反向透明代理怎么样设置?

发表在 Linux面板2021-9-23 08:11 [复制链接] 11 2910

我用sanic框架做的网站,使用nginx反向代理后,不能获取请求的ip地址,在网上没有查到宝塔的透明代理设置,请教一下,怎么样设置透明代理?
使用道具 举报 只看该作者 回复
发表于 2021-9-23 08:21:14 | 显示全部楼层
不知道在哪加入:
  1. proxy_set_header Host $host;
  2.         proxy_set_header X-Real-IP $remote_addr;
  3.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
复制代码

配置文件加了几处,都没有解决
  1. erver
  2. {
  3.     listen 80;
  4.     server_name xiaoxiaoshuo.cc xiaoxiaogou.cc xx.dog m.xiaoxiaoshuo.cc m.xx.dog m.xiaoxiaogou.cc;
  5.     index index.php index.html index.htm default.php default.htm default.html;
  6.     root /www/wwwroot/xiaoxiaoshuo.cc;
  7.     proxy_set_header Host $host;
  8.     proxy_set_header X-Real-IP $remote_addr;
  9.     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  10.     #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
  11.     #error_page 404/404.html;
  12.     #SSL-END
  13.    
  14.     #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
  15.     #error_page 404 /404.html;
  16.     #error_page 502 /502.html;
  17.     #ERROR-PAGE-END
  18.    
  19.     #PHP-INFO-START  PHP引用配置,可以注释或修改
  20.     #清理缓存规则

  21.     location ~ /purge(/.*) {
  22.         proxy_cache_purge cache_one $host$1$is_args$args;
  23.         #access_log  /www/wwwlogs/xiaoxiaoshuo.cc_purge_cache.log;
  24.         proxy_set_header Host $host;
  25.         proxy_set_header X-Real-IP $remote_addr;
  26.         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  27.     }
  28.         #引用反向代理规则,注释后配置的反向代理将无效
  29.         include /www/server/panel/vhost/nginx/proxy/xiaoxiaoshuo.cc/*.conf;
  30.   proxy_set_header Host $host;
  31.   proxy_set_header X-Real-IP $remote_addr;
  32.   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  33.         include enable-php-00.conf;
  34.     #PHP-INFO-END
  35.    
  36.     #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
  37.     include /www/server/panel/vhost/rewrite/xiaoxiaoshuo.cc.conf;
  38.     #REWRITE-END
  39.    
  40.     #禁止访问的文件或目录
  41.     location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
  42.     {
  43.         return 404;
  44.     }
  45.    
  46.     #一键申请SSL证书验证目录相关设置
  47.     location ~ \.well-known{
  48.         allow all;
  49.     }
  50.    
  51.     access_log  /www/wwwlogs/xiaoxiaoshuo.cc.log;
  52.     error_log  /www/wwwlogs/xiaoxiaoshuo.cc.error.log;
  53. }
复制代码
使用道具 举报 回复 支持 反对
发表于 2021-9-23 10:18:41 | 显示全部楼层
您好,您将获取IP的参数添加到反向代理配置内,不是网址配置内。
使用道具 举报 回复 支持 反对
发表于 2021-9-23 11:06:45 | 显示全部楼层
谢花郎 发表于 2021-9-23 10:18
您好,您将获取IP的参数添加到反向代理配置内,不是网址配置内。

应该写在什么地方才对?
使用道具 举报 回复 支持 反对
发表于 2021-9-23 11:11:59 | 显示全部楼层
反向代理中本来就有这个配置,但就是不能获取客户的请求ip
  1. #PROXY-START/
  2. location  ~* \.(gif|png|jpg|css|js|woff|woff2)$
  3. {
  4.     proxy_pass http://127.0.0.1:8090;
  5.     proxy_set_header Host $host;
  6.     proxy_set_header X-Real-IP $remote_addr;
  7.     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  8.     proxy_set_header REMOTE-HOST $remote_addr;
  9.     expires 12h;
  10. }
  11. location /
  12. {
  13.     proxy_pass http://127.0.0.1:8090;
  14.     proxy_set_header Host $host;
  15.     proxy_set_header X-Real-IP $remote_addr;
  16.     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  17.     proxy_set_header REMOTE-HOST $remote_addr;
  18.    
  19.     add_header X-Cache $upstream_cache_status;
  20.    
  21.     #Set Nginx Cache
  22.    
  23.             add_header Cache-Control no-cache;
  24. }

  25. #PROXY-END/
复制代码
使用道具 举报 回复 支持 反对
发表于 2021-9-23 11:17:25 | 显示全部楼层
谢花郎 发表于 2021-9-23 10:18
您好,您将获取IP的参数添加到反向代理配置内,不是网址配置内。

帮我看看,谢谢
使用道具 举报 回复 支持 反对
发表于 2021-9-23 11:23:17 | 显示全部楼层

您好,下个todesk,然后发我远程码,我看下。
使用道具 举报 回复 支持 反对
发表于 2021-9-23 11:56:05 | 显示全部楼层
谢花郎 发表于 2021-9-23 11:23
您好,下个todesk,然后发我远程码,我看下。

已经发到私信,请帮我看看
使用道具 举报 回复 支持 反对
发表于 2021-9-23 12:05:58 | 显示全部楼层
已远程查看,用户反向代理端是可以正常获取,用户程序后端是无法进行获取真实IP。
这个需要再用户程序上设置获取xxf头
使用道具 举报 回复 支持 反对
发表于 2021-9-23 12:11:08 | 显示全部楼层
宝塔用户_gbkvxg 发表于 2021-9-23 11:56
已经发到私信,请帮我看看

手动获取请求ip,依然得不到真实ip,仍是127.0.0.1
使用道具 举报 回复 支持 反对
发表于 2021-9-23 12:11:49 | 显示全部楼层
谢花郎 发表于 2021-9-23 11:23
您好,下个todesk,然后发我远程码,我看下。

手动获取请求ip,依然得不到真实ip,仍是127.0.0.1
使用道具 举报 回复 支持 反对
发表于 2021-9-23 14:32:41 | 显示全部楼层
宝塔用户_gbkvxg 发表于 2021-9-23 12:11
手动获取请求ip,依然得不到真实ip,仍是127.0.0.1

您好,这个是你后端程序获取的,而不是nginx前端获取的。
这个你只能调整后端项目
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

快速回复 返回顶部 返回列表