我有一个重写,将所有内容路由到我的index.php
文件,但是,如果网址以已知扩展名结尾(例如:.gif
,.png
),则会失败并给出一个nginx 404错误页面。怎么样?
我的重写看起来像这样:
location / {
try_files $uri $uri/ /index.php?$args;
}
此网址正常domain.com/attachment/53c386a876a56_ets2_00000
,正在使用index.php
文件。
这不起作用domain.com/attachment/53c386a876a56_ets2_00000.png
并且给出了404 Not Found nginx错误。
为什么当我在网址中有已知的扩展名时,它是否会被发送到我的index.php
?
答案 0 :(得分:0)
我有一个location
块来获取这些扩展,从而打破了重写。
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。