htacces RewriteRule 不会在每个请求上触发

htacces RewriteRule 不会在每个请求上触发

我们刚刚测试了一个 CMS 扩展,旨在为其他格式创建 .webp 图像并将此 .webp 版本而不是原始版本传送到浏览器。

关键是这个.htaccess RewriteRule:

RewriteCond %{HTTP_ACCEPT} image/webp
RewriteCond %{DOCUMENT_ROOT}/$1.$2.webp -f
RewriteRule ^(fileadmin/.+)\.(png|jpg|jpeg)$ $1.$2.webp [T=image/webp,E=accept:1]

但此规则仅在某些时候触发。例如,对于包含 4 张图片的页面,浏览器会随机接收每张图片的 .jpg 版本或 .webp 版本。两个版本都存在于“./fileadmin/”目录的子目录中(例如 someimage.jpg 和 someimage.jpg.webp)。它不依赖于图片。页面上的每张图片都显示此行为 - 有时是 .jpg,有时是 .webp。

知道这是什么原因造成的吗?如何解决?

相关内容