Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 使用htaccess重写规则排除Codeigniter中的子文件夹_Apache_.htaccess_Codeigniter_Mod Rewrite_Mod Authz Host - Fatal编程技术网

Apache 使用htaccess重写规则排除Codeigniter中的子文件夹

Apache 使用htaccess重写规则排除Codeigniter中的子文件夹,apache,.htaccess,codeigniter,mod-rewrite,mod-authz-host,Apache,.htaccess,Codeigniter,Mod Rewrite,Mod Authz Host,我使用以下.htaccess代码在CodeIgniter中隐藏index.php RewriteBase / RewriteCond $0#%{REQUEST_URI} ([^#]*)#(.*)\1$ RewriteRule ^.*$ - [E=CWD:%2] RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l RewriteRule

我使用以下
.htaccess
代码在
CodeIgniter
中隐藏
index.php

RewriteBase /
RewriteCond $0#%{REQUEST_URI} ([^#]*)#(.*)\1$
RewriteRule ^.*$ - [E=CWD:%2]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^.*$ %{ENV:CWD}index.php?/$1 [QSA,L]
我在webroot下用index.php定义了一个受密码保护的子目录
[admin]
HTACCESS

AuthName "Secure Area"
AuthType Basic
AuthUserFile "C:\xampp\htdocs\personal\admin\passwd"
require valid-user
但当我试图访问admin文件夹时,它抛出了
404错误
。实际上,webroot上的.htaccess正在覆盖子目录中的htaccess

如果在webroot中删除了以下行,则子目录下的.htaccess正在工作

RewriteRule ^.*$ %{ENV:CWD}index.php?/$1 [QSA,L]

尝试使用
RewriteCond$1^(管理员)
在根htaccess的最后一行之前。
重写cond%{REQUEST_URI}^/(phpmyadmin/*)$
errordocument401default
RewriteRule^.*${ENV:CWD}index.php?/$1[QSA,L]
这行代码对我来说很有用