【发布时间】:2018-05-28 00:47:44
【问题描述】:
我正在尝试在我的网站上显示 webp 图片,其中使用 LiteSpeed Web 服务器和 htaccess 文件有 jpeg 或 png 图片。
由于我的 webp 图片名称,sn-p 无法正常工作。我的转换器没有更改扩展名,而是将新扩展名添加到图片的全名中。示例:
普通图片的网址:
http://domain.tld/path/to/pic/image.png (or jpe?g)
webp图片网址:
http://domain.tld/path/to/pic/image.png.webp
这就是我的 htaccess 的样子:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_ACCEPT} image/webp
RewriteCond %{REQUEST_URI} (.*)(\.(jpe?g|png))$
RewriteRule .* %1\.webp [L,T=image/webp]
</IfModule>
<IfModule mod_headers.c>
Header append Vary Accept env=REDIRECT_accept
</IfModule>
AddType image/webp .webp
我认为问题出在 RewriteRule。我得到的结果是:
http://domain.tld/path/to/pic/image.webp
代替:
http://domain.tld/path/to/pic/image.png.webp (or jpe?g.webp)
我尝试将 RewriteRule 行更改为此,但没有成功:
RewriteRule .* %1\.(jpe?g|png).webp [L,T=image/webp]
有人可以对此有所了解吗?我是 htaccess 的初学者,我知道我没有使用正确的语法来使它工作。如果你们想检查页面并检查图像,这是网站:LEXSTYLE 任何帮助将非常感激。 谢谢。
【问题讨论】:
-
如何改变 "RewriteCond %{REQUEST_URI} (.*)(\.(jpe?g|png))$ RewriteRule .* %1\.webp [L,T=image/webp] " 到 "重写规则 (.+)\.(jpe?g|png)$ $1.webp [T=image/webp,E=accept:1]"?看起来很相似,不知道它是否有帮助。
-
感谢您的回复,埃里克。我以前尝试过,但没有用。我最终改变了图片的名称......!哈哈。还是谢谢!
-
没问题。它只是通过更改图像名称来工作!酷
标签: apache .htaccess mod-rewrite webp litespeed