0

我对整个 .htaccess 东西还很陌生,我现在正在使用以下内容来使用“漂亮的 url”:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?path=$1 [NS,L]
</IfModule>

现在我发现我的网站有点慢,并决定通过我在网络(网站)某处找到的 php 脚本开始压缩我的 CSS 文件。为此,我需要重写 url 以打开正确的 php 文件。看起来像这样:

RewriteRule ^(.*).css$ /csszip.php?file=$1.css [L]

但我只希望第一个发生,而第二个不发生,反之亦然。换句话说,我想要这样的东西:

<IfModule mod_rewrite.c>
    RewriteEngine On
    if request doesn't contain .css do
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)$ index.php?path=$1 [NS,L]
    else do
        RewriteRule ^(.*).css$ /csszip.php?file=$1.css [L]
</IfModule>

任何人都可以帮助我使用正确的代码或我可以找到在 htaccess 文件中使用某种条件语句的方法吗?

提前致谢!:)

4

1 回答 1

1

试试这个

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_URI} !.css
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?path=$1 [NS,L]

    RewriteRule ^(.*).css$ /csszip.php?file=$1.css [L]
</IfModule>

此外,您可以将最后一条规则放在首位

于 2012-09-12T09:04:45.623 回答