2009-08-03 70 views
1

只是一件小事,但我无法超越它。mod_rewrite覆盖调用html根

因此,假设你将在你的html文件中引用图像和css文件,如下所示:< img src =“/ img/myimage.jpg”/ >等等。现在,如果你想添加一个mod重写规则来将这些地址映射到/subset/img/myimage.jpg之类的东西,你会怎么做?

就我所知,我无法覆盖以/开头的路径。而当你处理它时,如果存在一个可以为所有文件请求执行映射的规则,那将会很好。

谢谢!

编辑:还有一件事。还有相对路径(由tinyMCE生成),像这样工作“../../../../img/myimage.jpg”。我不确定为什么这些工作,因为这些路径将被映射到public_html下的某处。任何帮助与这些将不胜感激。

回答

0

啊!对不起,我很愚蠢。您当然需要处理映射到文档根目录下的文档根目录的请求。你看我在一个子目录下工作。

路径工作映射在public_html或www下面的事实仍然困扰着我。但我想这多余的“../”只是被忽略并映射到文档根目录。

0

试试这个规则:

RewriteRule ^img/.* subset/$0 [L] 

现在你的第二个问题:相对URI总是解析为绝对URI它们发送到服务器之前。因此,客户端将根据基本URI解析../../../../img/myimage.jpg(请参阅RFC 2396 5.2。将相对引用解析为绝对表单)。因此,服务器将始终接收绝对URI路径,然后它可以附加到文档根路径以将请求的URI路径映射到文件系统。

+0

而且我猜测它会去掉多余的“../”? – JHollanti 2009-08-03 14:38:52