我正在尝试使用mod_rewrite来创建干净的链接。我已经把它从这里拿走了我的网址:
http://www.example.com/index.php?LTKeywords=long-tail-keyword
到
http://www.example.com/long-tail-keyword/
这正是我想要的。我使用的代码是:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)/ index2.php?LTKeywords=$1
一个问题。
它现在重定向我的所有文件夹,因此我的/images/
或/css/
文件夹中的任何内容都不会显示。有没有办法阻止它重写特定的文件夹?
答案 0 :(得分:1)
最简单的方法可能是RewriteCond
。您可以使用!
作为前缀来指定必须不匹配:
RewriteCond %{REQUEST_URI} !^/css
例如。
您可能只想排除实际存在的目录:
RewriteCond %{REQUEST_URI} !-d
最后,您还可以将静态内容放在不同的主机名(virtualhost)上,避免重写规则。
您还可以添加一些RewriteRules以匹配您的CSS等,并使它们实际上不会更改任何内容(重写/ css到/ css)但指定L(last)标志,因此其他规则不会运行。