wordpress 中 wp-login.php 的重定向和 authuser 的 .htaccess 问题
Posted
技术标签:
【中文标题】wordpress 中 wp-login.php 的重定向和 authuser 的 .htaccess 问题【英文标题】:.htaccess issues with redirecting and authuser for wp-login.php in wordpress 【发布时间】:2015-09-02 20:55:00 【问题描述】:我们切换了域/站点,并将流量从旧站点重定向到新站点,但我们通过 .htaccess 将我们的 Wordpress 博客保留在旧站点上。在 Wordpress 中,我们有另一个 .htaccess 来密码保护“wp-login.php”,但如果它处于活动状态,那么它将请求重定向到我们的新站点。
/home/user/public_html/.htaccess
# -FrontPage-
RewriteEngine on
RewriteCond %REQUEST_URI !^/(blog|blog/wp-admin.php|blog/wp-admin|blog/wp-login.php)
RewriteRule ^.*$ http://www.newwebsite.com/
AuthUserFile /home/user/public_html/_vti_pvt/service.pwd
AuthGroupFile /home/user/public_html/_vti_pvt/service.grp
# Begin password protection #
# End password protection #
...
/home/user/public_html/blog/.htaccess
<Files wp-login.php>
AuthUserFile /home/user/public_html/blog/.htpasswd
AuthName "Private access"
AuthType Basic
require valid-user
</Files>
我如何继续保护 wp-login 并允许它正确重定向?
【问题讨论】:
【参考方案1】:此配置应该可以工作。您的根目录中的.htaccess
文件首先被处理,如果没有匹配,将重定向到您的新站点。如果未执行重定向并且加载了 /blog/wp-login.php
页面,则您的第二个 .htaccess
文件应处理触发基本身份验证提示。
您的.htaccess
重定向也可以简化,因为您只需要确保URL 路径不以/blog/
开头。如果没有匹配项,您可以使用 .
匹配项重定向到新站点。
RewriteEngine on
RewriteCond %REQUEST_URI !^/blog/
RewriteRule . http://www.newwebsite.com/
【讨论】:
以上是关于wordpress 中 wp-login.php 的重定向和 authuser 的 .htaccess 问题的主要内容,如果未能解决你的问题,请参考以下文章
PHP Wordpress:通过functions.php自定义wp-login.php
WordPress安全 - 隐藏保护wp-login.php后台登陆入口
wordpress可以从后台wp-login登录,但是主页侧边栏无法登录