URL重写 - 遵循我的规则并保留物理文件

时间:2011-04-20 05:18:51

标签: php .htaccess mod-rewrite

这里的mod_rewrite中的Noob ...我正在开发一个新站点并使用mod_rewrite。

问题是,当我在.htaccess中激活我的规则时,我对CSS文件和图片的链接变得不可读。

例如,我有这个: http://www.dico2rue.com/dictionnaire.php?idW=675&word=Resto-basket 我改变了这个: http://www.dico2rue.com/dictionnaire/675/Resto-basket

我知道这可能是因为浏览器正在寻找CSS文件 http://www.dico2rue.com/dictionnaire/675/css/general.css而不是基本目录,但我希望有一种方法可以单独保留物理文件,并且只解析其他网址以避免完整路径(这显然会减慢下行速度)速度...?...)。

感谢。

2 个答案:

答案 0 :(得分:1)

此问题与mod_rewrite无关;您只需要在链接标记的src属性中为CSS文件提供有效的URL。您可能想要使用的相对URL是“/css/general.css”。请参阅relative URL rfc

另一方面,你对mod_rewrite的想法可能有些偏差。在您的示例中,您实际上是在服务器的/ dictionnaire / 675 /路径中提供资源。你使用mod_rewrite而不是其他方法的事实没有区别。

答案 1 :(得分:0)

你需要在重写规则之前添加这些行来检查它是不是文件或目录

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d