昨天搭建了一个ngnix代理后端tomcat集群的拖布环境,死活加载不了后端js/css,后在网上折腾了大概一小时左右,终于找到了缘由所在
大概的缘由就是由于后端节点没法获取到到客户端真实的信息,如IP地址,使用的协议,端口号等,由于后端节点认为的客户端是nginx代理而不是我真正的客户端(浏览器)
解决方法就是添加proxy_set_header信息,改变请求头部的信息,告诉后端节点客户端真实的信息
最总的配置方案就是css
[root@LB01 conf]# vim nginx.confnginx
events {
worker_connections 1024;
}vimhttp {
#http_proxy
proxy_buffer_size 128k;
proxy_buffers 32 128k;
proxy_busy_buffers_size 128k;后端upstream tomcat {
server 10.0.0.11:8080;
server 10.0.0.12:8080;
}浏览器server {
listen 8080;
server_name your.domain.com;tomcatlocation / {proxy_pass http://tomcat;
#proxy_params
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}服务器}dom
}ide
解释如下上面的配置,以上配置是在Nginx反向代理的时候,添加一些请求Header。 代理
![]
参考连接:https://flyflyfish.com/2018/02/28/nginx代理tomcat致使css或js加载失败/