我对我正在处理的网站有一个奇怪的问题,它确实让我发疯,虽然它应该只是起作用。
我在domain.nl有一个站点,在domain.nl/cms有一个CMS。 除图像,css等和/ cms文件夹之外的所有请求都被重定向到domain.nl/mesam/mesam.php,根目录中有.htaccess文件。
在/ cms文件夹中,有一个基本的http auth,在该文件夹中有.htaccess和.htpasswd。
domain.nl工作正常,除了domain.nl/cms被重定向到mesam / mesam.php,使/ cms文件夹无法访问。
现在,有两种方法可以获得cms: 1)我删除根文件夹中的.htacces,打破整个网站(除了/ cms) 2)我删除/cms/.htaccess,网站本身一直在工作,domain.nl / cms导致一个不安全的CMS,我当然不想要。
这里有一些内容:
domain.nl/.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/cms
RewriteCond %{REQUEST_URI} !(\.png|\.jpg|\.gif|\.jpeg|\.bmp|\.css|\.js|favicon\.ico|\.svg|\.pdf|\.ino)$ [NC]
RewriteRule (.*) mesam/mesam.php [L]
domain.nl/cms/.htaccess:
AuthName "CMS"
AuthUserFile <<www_root>>/cms/.htpasswd
AuthGroupFile /dev/null
AuthType Basic
require valid-user
奇怪的是,这个完全相同的设置适用于同一服务器上的另一个站点(domain2.nl),相同的目录结构和相同的htaccess-contents。 谷歌证明是有帮助的,因为它告诉我我使用的设置是正确的(由domain2.nl证明)。
我真的希望有人可以帮助我。我在Apache上运行PHP7,在CPanel(以及一些Linux发行版运行)的共享托管服务器上运行。 domain.nl和domain2.nl的PHP和服务器设置是相同的。
答案 0 :(得分:0)
尝试以下解决方案:
在授权部分之后添加ErrorDocument 401 "Authorisation Required"
。
您已替换
AuthName "CMS"
AuthUserFile <<www_root>>/cms/.htpasswd
AuthGroupFile /dev/null
AuthType Basic
require valid-user
使用
AuthName "CMS"
AuthUserFile <<www_root>>/cms/.htpasswd
AuthGroupFile /dev/null
AuthType Basic
require valid-user
ErrorDocument 401 "Authorisation Required"