我有下一条规则:
RewriteCond %{HTTP_REFERER} ^$ [OR]
RewriteCond %{HTTP_REFERER} !^https?://itransformer.*$ [NC]
RewriteRule \.(gif|jpe?g|png|wbmp)$ - [R=403,L]
在主
.htaccess
文件中。当任何人试图热链接图像时,他将得到403响应。不过,他得到了404的回复。如果我评论上面的几行,就不会出错。
似乎是由于树枝异常模板。
我正在覆盖来自树枝异常模板的一些错误模板。
通过添加文件:
/app/Resources/TwigBundle/views/Exception/error404.html.twig
,我已成功覆盖404错误模板。并尝试重写403错误模板。尝试添加:
/app/Resources/TwigBundle/views/Exception/error403.html.twig
但未显示。apache配置中没有
ErrorDocument
文件,也没有.htaccess
文件。为什么它会抛出404响应,而应该抛出403响应?
最佳答案
你能试试这个规则吗:
RewriteCond %{HTTP_REFERER} !^https?://mysite\.com [NC]
RewriteRule \.(gif|jpe?g|png|wbmp)$ - [NC,F]
关于php - 当应该抛出403时抛出404响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19787522/