2

我想替换我的链接如下

www.site.com?action&MasterKategori=Music&kategori=Pop&SubKategori=Western

经过

www.site.com/Music/Pop/Western

我使用这个脚本

重写引擎开启

RewriteBase /

重写引擎开启

RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+) index.php?action&m=$1 &k=$2&s=$3

有用!但是改变了我的网站偏好,当点击 URL 时,所有包含的文件(css,js)也会被重写。

我怎样才能阻止这种情况发生?

4

3 回答 3

1

您可以使用重写条件来告诉规则不匹配对应于实际文件的 URI。

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+)/([a-zA-Z0-9_-]+) index.php?action&m=$1&k=$2&s=$3
于 2012-09-11T03:55:16.973 回答
0

试试这个(你可以在第三行添加任何你想要的扩展):

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !\.(js|css|png|jpe?g|ico)$
RewriteRule ^([a-z0-9_-]+)/([a-z0-9_-]+)/([a-z0-9_-]+) index.php?action&m=$1&k=$2&s=$3 [L,NC]
于 2012-09-11T10:37:54.660 回答
-1

在 RewriteRule 之前添加以下行

RewriteCond $1 !^(favicon\.ico|favicon\.png|media|robots\.txt|crossdomain\.xml|css|js)
于 2012-09-11T03:55:09.923 回答