Nginx目录浏览开启后,但是通过目录浏览中的链接打开链接无法访问,错误404,如何解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx目录浏览开启后,但是通过目录浏览中的链接打开链接无法访问,错误404,如何解决?相关的知识,希望对你有一定的参考价值。

这是目录浏览的样式,
点击英文链接没问题,但是如果点击中文目录就会出现404提示,比如点击第一个中文目录【广告投放管理系统原型v1.3_技术部_20151118/】

现在发现原因是中文目录路径没有经过urlencode编码,但是目录浏览页面是nginx自动生成的,如何改其页面链接都经过urlencode编码呢?

参考技术A 所有文件最好不要用中文,404提示一般是文件不存在。

Nginx 开启目录浏览功能配置

在server节点下添加

 1 server {
 2     listen       8007;
 3     server_name  default;
 4     #index        index.php;
 5     # 目录浏览功能
 6     autoindex on; 
 7     # 显示文件大小统计
 8     autoindex_exact_size off;
 9     
10     root         /mnt/hgfs/dev;
11 
12     location ~ \.php(.*)$ {
13         add_header Access-Control-Allow-Origin *;
14         fastcgi_pass   127.0.0.1:9001;
15         fastcgi_index  index.php;
16         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
17         fastcgi_param PATH_INFO $1;                                                                                                                                                                              
18         include        fastcgi_params;
19     }   
20 }

 

以上是关于Nginx目录浏览开启后,但是通过目录浏览中的链接打开链接无法访问,错误404,如何解决?的主要内容,如果未能解决你的问题,请参考以下文章

nginx开启目录浏览,解决中文乱码问题

Nginx 开启目录浏览功能配置

nginx配置反向代理缓存负载均衡

浏览器通过http协议通过nginx访问ftp服务器上的文件

fedora 开启 apache 并 开启目录浏览模式

目录浏览漏洞修复建议