在一个域名下代理不同的后端服务,比如 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
jinliming2 2019-08-10 21:20:33 +08:00 via iPhone
1 的问题要到后端反代的服务上去处理,直接在 Nginx 上配应该比较困难。(可能要第三方模块?)
2 的问题我没 Get 到点? tokenerror 应该也是后端反代的服务报的,去看服务的日志。 |
2
Acoffice 2019-08-10 21:59:07 +08:00 via Android
写两个 location,不就完事儿了
|
3
hawhaw 2019-08-10 22:19:36 +08:00 via Android
问题一 css 路径不对肯定是页面里用了绝对路径 /css/style.css
|
4
Danswerme 2019-08-10 23:21:13 +08:00 via Android
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; } } 是这样吗?你把你配置文件弄出来看看呗 |
5
autogen 2019-08-11 03:03:39 +08:00
proxy_pass http://192.168.1.1:8080/foo/;
|