Nginx proxy_pass 位置绝对路径
Nginx proxy_pass location absolute paths
我有一个代理页面:http://destsrv:8089/index.html
它包含 link 到绝对路径,如:href="/static/bootstrap/css/bootstrap.min.css"
nginx 配置如下:
location /admin/ {
proxy_pass http://destsrv:8089/;
}
虽然在访问 http://myproxy/admin/index.html
它试图从以下位置获取 .css:
http://myproxy/static/bootstrap/css/bootstrap.min.css
但预期是:
http://myproxy/admin/static/bootstrap/css/bootstrap.min.css
怎么做?
试试这个
location /admin/ {
proxy_pass http://destsrv:8089/;
sub_filter_once off;
sub_filter "http://destsrv:8089/" "$scheme://$host/admin";
sub_filter 'href="/' 'href="/admin/';
sub_filter "href='/" "href='/admin/";
}
您基本上想使用过滤器修复 url
我有一个代理页面:http://destsrv:8089/index.html
它包含 link 到绝对路径,如:href="/static/bootstrap/css/bootstrap.min.css"
nginx 配置如下:
location /admin/ {
proxy_pass http://destsrv:8089/;
}
虽然在访问 http://myproxy/admin/index.html
它试图从以下位置获取 .css:
http://myproxy/static/bootstrap/css/bootstrap.min.css
但预期是:
http://myproxy/admin/static/bootstrap/css/bootstrap.min.css
怎么做?
试试这个
location /admin/ {
proxy_pass http://destsrv:8089/;
sub_filter_once off;
sub_filter "http://destsrv:8089/" "$scheme://$host/admin";
sub_filter 'href="/' 'href="/admin/';
sub_filter "href='/" "href='/admin/";
}
您基本上想使用过滤器修复 url