2015-09-25 73 views
1

内装载我有密码保护的名为“管理员”使用通常的.htaccess方法目录:页面没有密码保护的目录

AuthType Basic 
AuthName "restricted area" 
AuthUserFile xx.xxx.xxx.xx/public_html/admin/.htpasswd 
require valid-user 

当我加载的密码保护网站的主页,我登录在主页加载正常,但后来当我点击一个链接加载一个子页面,主页只是重新加载。有链接打开弹出窗口,这些弹出窗口也包含主页,当他们应该加载表格等。

有没有什么缺少在我的.htaccess文件?

+0

这就是你在.htaccess文件中所有的东西吗?任何其他.htaccess文件?您要求的网址是什么?它是否“重定向”回主页?或者您是否在地址栏中看到正确的网址? – MrWhite

+0

感谢您的回复,正确的URL位于地址栏中,但内容是主页。我有一个Wordpress安装在它的通常的htaccess根目录下,但是这个admin目录是从一个子域创建的,所以是(或者不应该)受到WordPress的htaccess的影响。 – Adrian

回答

0

我有一个Wordpress安装在其通常的htaccess根目录下,但是这个admin目录是从一个子域创建的,所以是(或者不应该)受到WordPress的htaccess的影响。

如果该子站点指向关闭主域的文档根目录的子目录(这是什么样子),那么父目录的“WordPress的”的.htaccess 影响这一点。 .htaccess文件沿文件系统路径继承。

由于WordPress使用mod_rewrite的,你可以阻止mod_rewrite对通过简单地使在子域的.htaccess文件重写引擎被继承:

RewriteEngine On 

AuthType Basic 
# etc... 

其他模块仍然会被继承,虽然默认安装WordPress不使用任何其他模块。


或者你可以尝试添加一个例外父目录的.htaccess文件,以排除它正在处理访问时,子域(或通过主域访问时,而只有过程吧)。以下内容添加到WordPress的.htaccess文件的顶部:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !=example.com 
RewriteRule^- [L] 

哪里example.com是你的主域名。基本上说,如果主机不是主域然后中止。

+0

感谢您的回答,我已将RewriteEngine On放入Auth的东西之前的子域.htaccess,这使得页面无法访问,并且出现内部服务器错误。 – Adrian

+0

你的错误日志报告是什么? – MrWhite

+0

你的意思是cPanel内的错误日志?目录中的错误日志不会说任何内容,因为它不是PHP错误。 – Adrian