在一个域名下代理不同的后端服务,比如 1. a.123.com/foo 代理到后端服务器的 192.168.1.1:8080/ 2. a.123.com/sub 代理到 192.168.1.2:8090/web,现在 1 的问题是 css 样式会丢失,查看 URL 是 a.123.com/css/styles.css ,但大带宽服务器真实的路径应该是 a.123.com/foo/css/styles.css 才能访问到,这个该怎么代理。 问题 2 是输入用户名密码登录不上,报 tokenerror 的信息,但直接登录后端的服务是没有问题的
以上两个问题麻烦大佬指点下
1 的问题要到后端反代的服务上去处理,直接在 Nginx 上配应该比较困难。(可能要第三方模块?)
2 的问题我没 Get 到点? tokenerror 应该也是后端反代的服务报的,去看服务的日志。
写两个 location,不就完事儿了
问题一 css 路径不对肯定是页面里用了绝对路径 /css/style.css
server {
listen 80;
server_name a.123.com;
location /sub/ {
proxy_pass http://192.168.1.2:8090/web;
}
location /foo/ {
proxy_pass http://192.168.1.1:8080;
}
}
是这样吗?你把你配置文件弄出来看看呗
proxy_pass http://192.168.1.1:8080/foo/;