我运行一个共享托管服务器,其中包含数百个 wordpress 站点,我想将 htpasswd 放在登录表单上。因此,我在 httpd.conf 中尝试了以下操作:
<Files wp-login.php>
AuthType Basic
AuthName "Password Protected Area"
AuthUserFile /var/htpass/.htpasswd
Require valid-user
</Files>
它几乎可以正常工作,但大多数网站都会导致无限重定向。如果我从网站上删除 .htaccess,这可以正常工作,但这会破坏漂亮的 URL。有什么想法可以让它们一起工作吗?谢谢。
答案1
我的 WordPress 代码片段:
<LocationMatch "/(wp-(admin|comments\-post|cron|login)|xmlrpc)(\/|\.php)?.*">
<Limit GET POST>
ACL-GOES-HERE
</Limit>
</LocationMatch>
答案2
我会将密码保护放在 .htaccess 文件本身中,而不是 httpd.conf 中
AuthUserFile /full/path/to/.htpasswd
AuthType Basic
AuthName "Wordpress Login Page"
<Files "wp-login.php">
Require valid-user
</Files>