给出以下配置:
server {
listen 80;
server_name site.com;
location /proxy {
proxy_pass http://newsite.com/;
}
}
site.com上托管的页面对所有静态文件使用相对路径(/main.css)
,因此当我收到代理页面时,浏览器会查询路径错误的静态文件:
如何将请求的静态文件放在原始位置(http://newsite.com/main.css)?
答案 0 :(得分:4)
您应该可以在server
部分使用rewrite rule,如下所示(未经测试):
server_name site.com;
rewrite ^/([^/]+\.css)$ http://newsite.com/$1;
这应该将site.com顶级目录中对.css文件的所有请求重定向到http://newsite.com/。如果需要包含其他静态文件(图像,脚本等),请根据需要调整正则表达式或添加重写规则。