如何解决替换 htaccess 中不存在的图片
在stackoverflow上进行一系列搜索后,我得到了这两个有效的htaccess代码,但是,我很困惑哪个更好。
实际上两者都可以正常工作,但在性能或速度上有什么不同吗?
<FilesMatch "\.(jpg|jpeg|png|gif)$">
ErrorDocument 404 "/no_profile_picture.png"
</FilesMatch>
和
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(jpg|jpeg|gif|png|ico)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* /no_profile_picture.png [L]
解决方法
当在您的站点根目录中找不到带有 /no_profile_picture.png
扩展名的图像时,这两个指令都将用于显示 jpg|jpeg|gif|png|ico
的核心目的。但是有细微的差别。
<FilesMatch "\.(jpg|jpeg|png|gif)$">
ErrorDocument 404 "/no_profile_picture.png"
</FilesMatch>
此指令还将向浏览器/客户端返回 404 (Http NotFound)
状态,但另一个块仍将 200 (Http OK)
状态返回给客户端。因此,我建议使用 FilesMatch
块以正确显示所需的未找到图像并将 404
返回给客户端。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。