我网站根源的htaccess具有两个功能:
1.在内部将所有URI重定向到/site/
文件夹。 (没有人应该可以访问此文件夹之外的文件。)
2. Explicitley将浏览器从mydomain/site/etc
重定向到mydomain/etc
。
RewriteEngine on
RewriteBase /
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^site/(.*)$ /$1 [L,R=303]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^(.*)$ site/$1
单独运行就可以了,但是如果我创建文件/site/.htaccess
并在其中写这行:
RewriteEngine On
突然,根htacces的“显式重定向”功能不再起作用,我可以通过mydomain/
和mydomain/site/
来访问站点的页面
如果我尝试访问mydomain/site
,然后查看apache错误日志,则看不到任何URL重写。
为什么? 根htaccess是否不应该首先运行?为什么在那里忽略它?