Nginx HTTP基本认证配置技术文档

一、概述

本文介绍如何为Nginx服务器配置HTTP基本认证(Basic Authentication),以保护Web应用访问。配置包括密码文件生成、Nginx配置修改、认证缓存管理等内容。

二、密码创建

2.1 安装 Apache 工具(用于生成密码文件)
cmd 复制代码
# Ubuntu/Debian
sudo apt-get install apache2-utils

# CentOS/RHEL
sudo yum install httpd-tools
2.2 创建用户密码
java 复制代码
sudo htpasswd -c /etc/nginx/.htpasswd username
  • -c 表示创建新文件(如果文件已存在,会覆盖)。
  • /etc/nginx/.htpasswd 是密码文件的路径(可自定义)。
  • username 是你要设置的账号名。
2.3 追加用户密码
bash 复制代码
htpasswd -b nginx-config/.htpasswd username pwd

三、Nginx配置修改

3.1 基本认证配置

在Nginx配置文件的server或location块中添加以下指令:

cmd 复制代码
# 启用基本认证,设置认证提示信息
auth_basic "Authentication Required";
# 指定密码文件路径
auth_basic_user_file /path/to/.htpasswd;
3.2 Docker容器部署配置

在Docker Compose配置中添加密码文件挂载:

cmd 复制代码
services:
  nginx:
    image: nginx:latest
    container_name: nginx-server
    ports:
      - '8080:80'
    volumes:
      # 挂载密码文件
      - ./nginx-config/.htpasswd:/etc/nginx/.htpasswd:ro

四、认证缓存机制

浏览器缓存行为,当用户首次成功认证后,浏览器会缓存认证凭据,并在后续请求中自动添加Authorization头:

Authorization: Basic base64(username:password)

相关推荐
catoop2 小时前
CentOS 7 重置root密码步骤
linux·运维·centos
white-persist2 小时前
【内网运维】Netsh 全体系 + Windows 系统专属命令行指令大全
运维·数据结构·windows·python·算法·安全·正则表达式
Ancelin安心2 小时前
计算机网络易混淆知识点总结
网络协议·tcp/ip·计算机网络·nginx·网络安全·docker·云原生
记得记得就1512 小时前
【jenkins持续集成测试】
运维·jenkins·集成测试
RisunJan2 小时前
Linux命令-ifcfg命令(临时配置网络接口的IP地址)
linux·运维·tcp/ip
安科瑞刘鸿鹏172 小时前
当宿舍开始“提前预警”,用电安全会发生什么变化?
运维·服务器·网络·数据库
忧云2 小时前
AirtestIDE 完全指南:从入门到实战,解放双手,实现通过图片定位元素自动化
运维·自动化·airtestide·图像识别自动化
我就是你毛毛哥2 小时前
Linux 系统上安装 Nginx以及使用,推荐使用编译安装
linux·运维·nginx
zly35002 小时前
CentOS系统下查看与修改网卡UUID的完整指南
linux·运维·centos