Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.1k views
in Technique[技术] by (71.8m points)

关于 nginx 静态文件配置问题

场景是这样,服务器上搭建一个静态文件目录。

nginx 配置如下:

server {
  listen 80;

  location ^~ / {
    index   index.html index.shtml;
    root /usr/share/nginx/html;
    try_files $uri $uri/ /index.html;
  }
}

现在访问路由的时候就会出现问题。

如下的链接会正确访问到资源。

# 正确的路径
http://www.test.com/docs/
http://www.test.com/docs/index.html

如果把最后面的 / 去掉就会 404。

# 错误的路径
http://www.test.com/docs

但是大家常规的访问一般都是不会去加 /的,可以不加 / 也访问到对应的 .../index.html 资源吗?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

这个问题解决了一部分,规则前配置 ^~ ,可以解决上面的问题,但是通过 nginx 再转发一次就会出问题。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...