nginx做反向代理,后端php检测不到HTTP_REFERER


    server {
        listen 80;
        server_name test.example.com;
    
        location / {
            proxy_pass http://text.example.com;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $host;
            proxy_set_header Referer $http_referer;
            proxy_redirect off;
        }
    }

上面将Referer头设置为$http_referer变量的值,在nginx的访问日志中也可以看到$http_referer是有值的,但是在PHP中没有$_SERVER['HTTP_REFERER']。如果将

proxy_set_header Referer $http_referer;

改成

proxy_set_header Referer $host;
或者
proxy_set_header Referer 'xxx';

在php中都可以取到$_SERVER['HTTP_REFERER'],请问我的配置是什么地方有问题呢?

阅读 10.5k
1 个回答
新手上路,请多包涵

我也是这样问题 一直没解决 您这边解决了么

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题