Apache htaccess - 将所有请求路由到index.php,但某些目录除外

时间:2014-08-27 16:38:26

标签: apache .htaccess

目前,我的.htaccess文件将所有不存在该文件的请求路由到index.php。我想改变它,以便它将所有请求路由到index.php,无论文件是否存在,除了某些目录/路径。 (例如/ js,/ css,/ img)

这是我目前的配置:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

我无法通过Google或apache的文档了解如何执行此操作。非常感谢帮助,以及关于此问题的任何一般提示。

1 个答案:

答案 0 :(得分:0)

以下内容应该有效

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} ! ^/css/ [OR]
    RewriteCond %{REQUEST_FILENAME} ! ^/img/ [OR]
    RewriteCond %{REQUEST_FILENAME} ! ^/js/
    RewriteRule . /index.php [L]
</IfModule>