.htaccess mod_重写将扩展名.gif/.jpg更改为.png

.htaccess mod_重写将扩展名.gif/.jpg更改为.png,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我一直在徒劳无益地使用的规则不起作用,我正在尝试将1个目录中的所有图像加载为.png。目录中的图像是.png、.jpg和.gif的混合体 我希望能够通过转到tree.png加载文件tree.jpg(没有同名文件)。我确信我的错误是显而易见的,或者我的整个尝试都是错误的,我就是无法解决 htaccess文件与图像位于同一文件夹中,称为/thumbs RewriteEngine On RewriteRule ^([^.]*)\.gif$ /thumbs/$1.png [R,L,NC] 我也试过了,

我一直在徒劳无益地使用的规则不起作用,我正在尝试将1个目录中的所有图像加载为.png。目录中的图像是.png、.jpg和.gif的混合体

我希望能够通过转到tree.png加载文件tree.jpg(没有同名文件)。我确信我的错误是显而易见的,或者我的整个尝试都是错误的,我就是无法解决

htaccess文件与图像位于同一文件夹中,称为/thumbs

RewriteEngine On
RewriteRule ^([^.]*)\.gif$ /thumbs/$1.png [R,L,NC]
我也试过了,但它只是提供了一个指向.gif和.png版本的断开链接

RewriteEngine on
RewriteRule ^(.+)\.gif$ $1.png
我也试过了,但出于某种原因,它在我的服务器路径中添加了URL

RewriteEngine on
RewriteRule ^([^.]*)\.gif$ $1.png [R,L,NC]
您可以使用此规则:

RewriteEngine on

RewriteRule ^([^.]+)\.png$ /$1.gif [L,NC,R]

所以浏览器向
/animage.gif
发送请求,您想在内部加载
/animage.png
?或者相反?@anubhava相反:)浏览器请求/animage.png,我想显示/animage.gif,所以实际上会在浏览器窗口中显示animage.gif谢谢@anubhava的帮助我尝试了这个副本并粘贴了你所说的内容,但它只是说.png的文件不存在(好的,只需击溃第一行并重试。您必须将此作为第一条规则放入DocumentRoot中。嘿@anubhava我在根htaccess中尝试作为第一条规则,但我无法使其工作,我一定错过了什么:扫描您尝试此编辑的规则并确保它在根目录中。htaccess还告诉我
.png
图像的完整URL?