文件从Windows转移到Linux,由于Windows下文件名不区分大小写,但是linux区分,导致,一些大写的文件名url打开报404错误。
解决办法:
1.将文件夹以及文件都改为小写,批量修改命令如下:
# find -exec sh -c 'rm -f "$0" `echo "$0" | tr "[A-Z]" "[a-z]"` > /dev/null 2>&1' {} \;
2.使用Lua模块实现大小写转化
Lua安装请参考 http://www.123admin.com/how-to-install-lua-nginx-module-on-nginx/
3.Nginx配置规则如下:
location / { if ($uri ~ [A-Z]){ rewrite_by_lua 'return ngx.redirect(string.lower(ngx.var.uri),ngx.HTTP_MOVED_PERMANENTLY)'; } }