从htaccess中排除文件夹

时间:2012-12-12 10:19:11

标签: .htaccess

我有一个使用htaccess的网站,以便使用不错的网址。但是,我希望htaccess文件单独留下整个文件夹,它完全是内容。我的htaccess文件的内容是:

RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1

如何完成上述代码以完全清除名为“admin”的文件夹

非常感谢提前!

3 个答案:

答案 0 :(得分:20)

您还可以将新的.htaccess文件放在要忽略的文件夹中,并说:

RewriteEngine Off

答案 1 :(得分:16)

如果要排除的文件夹为/excluded-folder/,则需要添加以下规则:

RewriteCond %{REQUEST_URI} !^/excluded-folder/.*$

在你列出的另外两个RewriteConds之前。

答案 2 :(得分:0)

我在TYPO3子目录中的PhpMyAdmin遇到问题。 长时间后,我在以上目录的.htaccess文件中发现此块,导致phpmyadmin的一个文件出现故障:

# UTF-8 encoding
AddDefaultCharset utf-8
<IfModule mod_mime.c>
    AddCharset utf-8 .atom .css .js .json .manifest .rdf .rss .vtt .webapp .webmanifest .xml
</IfModule>

原因是存在一个由规则触发的文件phpmyadmin.css.php
更改如下所示的规则后,PhpMyAdmin正常运行:

# UTF-8 encoding
AddDefaultCharset utf-8
<IfModule mod_mime.c>
    AddCharset utf-8 .atom .js .json .manifest .rdf .rss .vtt .webapp .webmanifest .xml

    #####
    ## This block is for the file phpmyadmin.css.php, where the suffix css is not the last one.
    ## @see https://httpd.apache.org/docs/current/mod/mod_mime.html#multipleext
    #####
    <FilesMatch "[^.]+\.css$">
      AddCharset utf-8 .css
    </FilesMatch>
</IfModule>

仅当后缀<FilesMatch "[^.]+\.css$">位于文件名末尾时,才触发条件css

所以我的情况不是重写,而是一个类似的问题,重写似乎是我的第一选择。