.htaccess抓住我的css / js

时间:2011-06-14 20:26:20

标签: .htaccess

由于我的htaccess配置,它似乎抓住了css / js和所有文件。

这是我的htaccess

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

以这种方式调用css或javascripts

<link href="/layout.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>

所有文件都由software_cat.php提供

如果我像这样添加广告斜杠:

    RewriteRule ^/(.*)$ software_cat.php?url=$1 [QSA,L]

所有文件都运行良好,但没有任何内容指向software_cat.php,所以它的问题相同,但反过来

我如何修复它,以便最后的捕获对css / js / images / etc不起作用?

由于

1 个答案:

答案 0 :(得分:0)

轻轻地更改规则的顺序:

Options +FollowSymlinks -MultiViews
RewriteEngine on

RewriteRule ^download/(.*)$ /download.php?url=$1 [QSA,L,NC]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /software_cat.php?url=$1 [QSA,L]

这样,由于2 RewriteCond行中指定的!-d!-f条件,您的css,js文件将不会被转发。