apache - 如果不存在图像则显示默认图像

标签 apache mod-rewrite centos

我在 Centos 5 上运行 Apache,我想实现重写规则。当用户尝试访问文件夹 /var/site.com/html/image/products/ 中的图像时,规则应检查图像是否存在,如果不存在,我想要 /var/site .com/html/image/defaultimage.jpg 显示

我尝试将其放入位于 /var/site.com/html/image/products/ 的 .htaccess 中,但它不起作用

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_URI} \.(gif|jpg|jpeg|png)$ 
RewriteRule .* /var/site.com/html/image/defaultimage.jpg [L]

最佳答案

RewriteRule 的目标(第二个参数)可以是文件路径或 URI 路径,apache 会尝试猜测您指的是哪一个。由于某种原因,如果它以 / 开头,它倾向于认为它是一个 URI 路径。尝试从目标中删除文档根目录:

RewriteRule .* /image/defaultimage.jpg [L]

关于apache - 如果不存在图像则显示默认图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11643640/

相关文章:

.htaccess - 301 将所有内容重定向到新网站根目录/整个网站(包括子页面)?永久搬家

centos - 想在容器中运行 exportfs,需要挂载到容器中吗?

WordPress 恶意软件 - 重定向到 (fast.destinyfernandi.com) - 即使在扫描和清理之后

centos - Virtualmin 启用 DKIM 后缀错误 : initctl: Unknown job: dkim-milter

apache - 如何使用 .htaccess 文件重写子目录的 URL?

php - 高 HTTP API 调用时 Apache 服务器变慢

Apache RewriteRule 代理不遵循重定向

Python mod_wsgi 写入自定义日志文件而不是 apache error_log

python - Site.domain不断更改为localhost :8000 all the time

.htaccess 和 seo 友好搜索查询字符串