我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

最近,苏南大叔的博客,终于被国外的利用评论刷外链的外国友人盯上了。今天早上尝试了几次之后,发现我的博客不是wp,他的灌水程序似乎不能正常运行。还留言主动询问我的博客类型是什么... 善良的我差点就被欺骗了,我点击它的链接过去后,果然是卖某某产品的页面。好吧,我还天真的认为,国外友人认真的拜读了我的中文大作。然后真心的表示非常ok呢。哈哈。

苏南大叔:nginx如何修改配置,以启用资源访问密码保护? - nginx-401-hero
nginx如何修改配置,以启用资源访问密码保护?(图4-1)

不过,由于,苏南大叔是从后台点击过去的他的页面。所以,理论上,他那边可以利用referer来获取更多信息。所以,给苏南大叔的后台目录再做一层密码加密防护的,还是非常有必要的。这个保护操作就是发出401 Unauthorized状态码,详细过程请参考本文的描述。

nginx启用目录密码

nginx的设置如下:

location ~ /admin {
  auth_basic "who are you";
  auth_basic_user_file /yourpath/yourpassword.pass;
}

具体的解释解释:
location这段,写错的话,会导致所有的php被当成普通文件下载回来哦。就是说你的源码暴露了。

#location ^~ /admin {   #文件匹配所有文件
#location ^~ /admin/ {    #文件仅匹配目录

auth_basic这段,是添加在授权对话框里面的文字。但是,各大浏览器的支持情况是不一样的。比如:chrome不支持显示,firefox不支持显示中文。

生成nginx专用的密码文件

auth_basic_user_file,这个就是你的用户名和密码的位置。苏南大叔是利用下面的脚本生成的。

printf "yourname:$(openssl passwd -crypt yourrealpassword)\n" >>/yourpath/yourpassword.pass

yourrealpassword这部分,里面如果含有特殊字符的话。需要用斜线进行转义操作。就是你回车键上边的那个字符。你懂的。加密完成的密码,每次都是不一样的。注意:是密码不一样,但是实际的密码都是一样的,只是加密的结果每次都不一样。

效果图

效果图如下:

苏南大叔:nginx如何修改配置,以启用资源访问密码保护? - nginx_pwd_00
nginx如何修改配置,以启用资源访问密码保护?(图4-2)

苏南大叔:nginx如何修改配置,以启用资源访问密码保护? - nginx_pwd_01
nginx如何修改配置,以启用资源访问密码保护?(图4-3)

苏南大叔:nginx如何修改配置,以启用资源访问密码保护? - nginx_pwd_02
nginx如何修改配置,以启用资源访问密码保护?(图4-4)

关联文章

  • 《安全启用宝塔面板自带的phpmyadmin》

https://seosn.com/say/bt-panel-enable-phpmyadmin.html

总结

令人激动人心的广告时间到了,更多由苏南大叔提供的nginx相关经验文章,马上请点击这里查看:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   nginx    401