nginx 代理图片、css、js等静态资源
我要将 /demo/ 访问前缀的资源代理到 9506 的根目录
发现下边这种方式,php/html 能代理过去,而图片、css、js会抛出 404,(为啥)
location ~ /demo/ {
proxy_pass http://127.0.0.1:9506/;
}
下方的写法解决了这个问题
location ~ /demo/.*\.(js|css|jpg|jpeg|gif|png|pdf)$ {
rewrite ^/demo/(.*) /$1 break;
proxy_pass http://127.0.0.1:9506;
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
关于 LearnKu
proxy_pass 127.0.0.1:9506 少了 /
时隔3年回头看,是location写错了,由于 /demo/ 优先级小于正则匹配
.*\.css,所以css资源根本没进入到 /demo/,修改如下:^为前缀匹配,~为区分大小写的正则匹配