Nginx访问控制_登陆权限的控制(http_auth_basic_module)

Nginx提供HTTP的Basic Auth功能,配置了Basic Auth之后,需要输入正确的用户名和密码之后才能正确的访问网站。

我们使用htpasswd来生成密码信息,首先要安装httpd-tools,在httpd-tools中包含了htpasswd命令。需要依赖一个工具,先检查一下系统是否已经安装此工具。

rpm -qf /usr/bin/htpasswd 

如果没有安装此工具,那么可以yum命令安装

yum install -y httpd-tools

接下来我们就可以创建用户和密码了,例如创建一个test_uname的用户,而且指定目录为/etc/nginx,如果没有此目录,那么创建目录,进入/etc/nginx目录下,执行以下命令

htpasswd -c ./nginx_auth_conf test_uname

下一步就是确定两次密码,完成之后cat查看一下

[root@localhost nginx]# cat nginx_auth_conf 
test_uname:zYOFNeL1lXaGk   //test_uname 为用户名,后面是密码

然后下一步就是修改Nginx的配置文件了,需要在访问控制的目录下编辑配置项,一定要制定好密码文件的路径

复制代码
server {
  listen       80;
  server_name example.com;
  access_log logs/access.log main;
  location / {
        root  /data/www/project;
        auth_basic "auth.......";
        auth_basic_user_file /etc/nginx/nginx_auth_conf;
        index index.php index.html;
  }
}
复制代码

记得修改完配置一定要检测Nginx配置是否正确,正确后再重新软加载配置文件

[root@~]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@~]# /usr/local/nginx/sbin/nginx -s reload

 

OK~

 

posted @   温柔的风  阅读(2302)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示