我有一个使用 htaccess 来使用漂亮 URL 的站点。但是我希望 htaccess 文件保留一个完整的文件夹并且它的内容完全。我的 htaccess 文件的内容是:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
我应该如何完成上述代码以完全排除名为“admin”的文件夹
提前谢谢了!
我有一个使用 htaccess 来使用漂亮 URL 的站点。但是我希望 htaccess 文件保留一个完整的文件夹并且它的内容完全。我的 htaccess 文件的内容是:
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1
我应该如何完成上述代码以完全排除名为“admin”的文件夹
提前谢谢了!
你也可以在你想忽略的文件夹中放一个新的 .htaccess 文件,说:
RewriteEngine Off
您要排除的文件夹在哪里,/excluded-folder/
您将添加以下规则:
RewriteCond %{REQUEST_URI} !^/excluded-folder/.*$
在您列出的其他两个 RewriteConds 之前。
我在 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
所以我的案例不是关于重写,而是关于一个类似的问题,重写似乎是我的首要解决方案。