Nignx负载,项目层面无法获取浏览器头部信息

来源:互联网 发布:北京现代软件学院骗局 编辑:程序博客网 时间:2024/05/29 19:20

在做一个项目,本机调试没有任何问题,部署到linux上面发现无法获取浏览器头部信息,如:

 String isAjxReq = request.getHeader("EB_X_REQUESTED_WD");

此值为空!

可是在页面已经赋值:

xhr.setRequestHeader('EB_X_REQUESTED_WD', 'ajax');

这是为什么呢?立刻想到是Nginx负载的问题,但是如何修改?

==================================================

1.开启 header的下划线支持

underscores_in_headers on;

2.配置header参数

proxy_set_header EB_X_REQUESTED_WD $http_eb_x_requested_wd;


EB_X_REQUESTED_WD 为java代码里面获取的头部参数

String isAjxReq = request.getHeader("EB_X_REQUESTED_WD");

$ 符号后面一律小写,以http开头


全景参照:

http {
include mime.types;
default_type application/octet-stream;
sendfile on;
tcp_nodelay on;
keepalive_timeout 30;
underscores_in_headers on;
upstream web_server {
#ip_hash;
server xxx.xxx.xxx.xxx:8899;
# server xxx.xxx.xxx.xxx:8087;
#server xxx.xxx.xxx.xxx:8082;
}

server {
listen 80;
location ~* \.(css|js|png|jpg|gif|ico)$ {
root /home/ebline/image;
if (!-e $request_filename) {
proxy_pass http://web_server;
}
}
location / {
proxy_pass http://localhost:8899;
proxy_set_header EB_X_REQUESTED_WD $http_eb_x_requested_wd;
}
}


原创粉丝点击