.htaccess 子文件夹的htaccess重写规则

.htaccess 子文件夹的htaccess重写规则,.htaccess,https,subdirectory,.htaccess,Https,Subdirectory,我有一个.htaccess文件,工作正常。 但是,不适用于/specialsubfolderhttp://www.mydomain.com/specialsubfolder/index.php重定向到401.shtml 因此,我修改了.htacces如下: RewriteEngine On #part I of .htaccess, performed for everything #stops part II from execution if specialsubfolder Rewrit

我有一个.htaccess文件,工作正常。 但是,不适用于
/specialsubfolder
<代码>http://www.mydomain.com/specialsubfolder/index.php重定向到
401.shtml

因此,我修改了.htacces如下:

RewriteEngine On
#part I of .htaccess, performed for everything

#stops part II from execution if specialsubfolder
RewriteCond %{REQUEST_URI} "/specialsubfolder/"
RewriteRule (.*) $1 [L]

#part II of .htaccess, performed for everything except specialsubfolder
很好。剩下的唯一问题是将specialsubfolder的所有http重定向到https

不幸的是,下面的代码不起作用(无论如何都会重定向到401.shtml错误页面)。为什么?


谢谢。

您遇到了错误,因为您的代码在此处导致无限循环:

RewriteCond %{REQUEST_URI} "/specialsubfolder/"
RewriteRule (.*) $1 [L]
在这里,您只需捕获整个请求URI并将其转发到同一个请求URI。例如:
/specialsubfolder/foo
的URI将转发到
/specialsubfolder/foo
,然后一次又一次重复相同的转发,直到Apache mod_rewrite超出默认递归限制并抛出错误


这很容易解决,但我很难理解您的要求。你能用简单的话告诉我你真正想用重写规则实现什么吗。

谢谢。根据你的回答,我发现了一个错误。非常感谢你!
RewriteCond %{REQUEST_URI} "/specialsubfolder/"
RewriteRule (.*) $1 [L]