nginx 配置异常!!最终访问的文件路径,是root+规则名+文件名

我的理想情况为 增加一条nginx规则/pc/static/开头的去到一个/data/images/static目录下找。

location ^~ /pc/static/ {
root /data/images/static;
}

然后浏览器请求为:http://www.xxx.com/pc/static/...

此文件真实存储在:/data/images/static/css/main.5f370f9d712819eb7f02713b24b3ce5a.css

诡异的是出现了404,查看日志是酱婶的:
2017/08/11 12:56:17 [error] 11497#0: *2029 open() "/data/images/static/pc/static/css/main.5f370f9d712819eb7f02713b24b3ce5a.css" failed (2: No such file or directory), client: 192.168.1.74, server: www.xxx.com, request: "GET /pc/static/css/main.5f370f9d712819eb7f02713b24b3ce5a.css HTTP/1.1", host: "www.xxx.com"

nginx居然去open了"/data/images/static/pc/static/css/main.5f370f9d712819eb7f02713b24b3ce5a.css"
居然 root + 规则 + 匹配路径 ...
居然 拼在了一起

求大神解答

阅读 3.5k
3 个回答

用nginx rewrite指令试试。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题