Nginx下使用auth_basic密码保护wordpress后台

  • 3
  • 7,273 views
  • A+
所属分类:wordpress

之前介绍过通过修改wp-login文件来保护wordpress后台,但是这种方法有个不方便的地方就是每次WP升级就又要重改一遍。在盟友告知后得知使用Nginx的auth_basic基本http验证功能可以保护web目录下的文件,于是我们就可以使用此文件来保护wp-login.php文件,这样不管人家用什么工具来扫都得过这一关。由于网上教程很多,所以我只记录我使用到的,环境是军哥的LNMP1.3。

1.生成用户名密码

http://tool.oschina.net/htpasswd 在这里输入用户名密码后选择Crypt加密算法。在vps上的/home目录下新建一个htpasswd文件,然后编辑htpasswd文件将刚才生成的用户名密码复制进去。

2.修改虚拟主机conf文件
vim /usr/local/nginx/conf/vhost/cmsky.com.conf,将下面一段加入其中,include enable-php.conf;后面

location = /wp-login.php {
auth_basic "Restricted";
auth_basic_user_file /home/htpasswd;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index wp-login.php;
include fastcgi.conf;
}

主要修改auth_basic_user_file这一行后面为你的密码文件位置就可以了。

3.重载Ningx配置service nginx reload

现在访问xxx.com/wp-login.php或者xxx.com/wp-admin应该都会弹出用户名密码的验证框就对了。

weinxin
我的微信公众号
我的微信公众号扫一扫

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:3   其中:访客  0   博主  0

    • ntu000 ntu000 0

      Warning: Use of undefined constant auto - assumed 'auto' (this will throw an Error in a future version of PHP) in /www/wwwroot/past.cmsky.org/wp-content/themes/begin5.2/inc/inc.php on line 911

      apache环境呢?能用吗?

        • 厘米 厘米 9

          Warning: Use of undefined constant auto - assumed 'auto' (this will throw an Error in a future version of PHP) in /www/wwwroot/past.cmsky.org/wp-content/themes/begin5.2/inc/inc.php on line 911

          @ntu000 这个方法一开始就是apache上用的。

            • 同盟源 同盟源 7

              Warning: Use of undefined constant auto - assumed 'auto' (this will throw an Error in a future version of PHP) in /www/wwwroot/past.cmsky.org/wp-content/themes/begin5.2/inc/inc.php on line 911

              @厘米 apache可以用directory段来设置认证
              我们比赛用到了一个扩展 mod_auth_mysql,可以连接数据库来进行验证,还是比较实用的