Nginx 以已知扩展名结尾的重写失败,为什么?
我有一个重写,它将所有内容路由到index.php文件,但是,如果url以已知扩展名结尾,例如:.gif、.png,它将失败并给出一个nginx 404错误页面。为什么 我的重写如下所示:Nginx 以已知扩展名结尾的重写失败,为什么?,nginx,Nginx,我有一个重写,它将所有内容路由到index.php文件,但是,如果url以已知扩展名结尾,例如:.gif、.png,它将失败并给出一个nginx 404错误页面。为什么 我的重写如下所示: location / { try_files $uri $uri/ /index.php?$args; } 此url适用于domain.com/attachment/53c386a876a56_ets2_00000,并使用index.php文件 这不适用于domain.com/attachment/
location / {
try_files $uri $uri/ /index.php?$args;
}
此url适用于domain.com/attachment/53c386a876a56_ets2_00000,并使用index.php文件
这不适用于domain.com/attachment/53c386a876a56_ets2_00000.png,并给出404未找到的nginx错误
当我在url中有一个已知的扩展名时,为什么不将它发送到我的index.php?我有一个位置块拾取这些扩展名,从而破坏了重写
location ~* \.(jpg|jpeg|gif|png|bmp|ico|pdf|flv|swf|exe|html|htm|txt|css|js) {
add_header Cache-Control public;
add_header Cache-Control must-revalidate;
expires 7d;
access_log off;
}
我评论说,现在它可以正常工作了
谢谢@Tan Hong Hat。请发布您的完整配置。