编辑
2024-12-31
服务器运维
00

目录

1. 创建密码文件
2. 创建密码文件
3. 配置 Nginx 使用 Basic 认证
4. 测试配置并重新加载 Nginx
5. 浏览器访问测试

在 Nginx 中配置 Basic 认证(基本认证)可以通过使用 auth_basic 和 auth_basic_user_file 指令来实现。基本认证是一个 HTTP 协议中的认证机制,它要求客户端在访问受保护的资源时提供用户名和密码。

1. 创建密码文件

首先,您需要创建一个包含用户名和密码的文件。常用的工具是 htpasswd,它可以在 Apache 或 Nginx 上生成加密后的密码。

安装 htpasswd 工具

bash
dnf install httpd-tools

2. 创建密码文件

使用 htpasswd 工具来创建和管理密码文件。假设要创建一个文件 /etc/nginx/.htpasswd,并为用户名 user 设置密码:

bash
sudo htpasswd -c /etc/nginx/.htpasswd user

执行该命令时,它会提示您输入并确认密码。如果 .htpasswd 文件已存在,去掉 -c 参数以避免覆盖原文件。

3. 配置 Nginx 使用 Basic 认证

编辑您希望启用 Basic 认证的 Nginx 配置文件。例如,编辑 /etc/nginx/nginx.conf 或者对应站点的配置文件(如 /etc/nginx/sites-available/default)。

在 server 或 location 块中添加以下内容:

nginx
server { listen 80; server_name example.com; location /protected/ { # 启用 Basic 认证 auth_basic "Restricted Area"; # 认证提示的文本,可以根据需要自定义 auth_basic_user_file /etc/nginx/.htpasswd; # 密码文件的路径 } # 其他配置 }

4. 测试配置并重新加载 Nginx

bash
#测试配置文件是否有错误 [root@DESKTOP-4QQA2BH ~]# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful #重启 systemctl restart nginx

5. 浏览器访问测试

http://localhost

本文作者:anoxia

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!