参考资料

  1. Nginx代理缓存配置详细说明以及案例
  2. Nginxindex:首页处理模块详细说明以及案例
  3. 如何结合WAF使用Nginx提高安全性?
  4. NginxFastCGI模块配置详细说明以及案例
  5. Nginxgzip开启压缩及相关配置详细说明以及案例
  6. Nginx + PHP-FPM 配置指南
  7. Nginxlocalhost 路由匹配规则详细说明以及案例
  8. Nginx基于FastCGI实现负载均衡详细说明以及案例

如何配置Nginx用户认证?

  1. 安装htpasswd工具(Apache工具包):

    • Ubuntu/Debian: sudo apt-get install apache2-utils

    • CentOS/RHEL: sudo yum install httpd-tools

  2. 创建密码文件:

    sudo htpasswd -c /etc/nginx/.htpasswd username
  3. 编辑Nginx配置文件(通常在/etc/nginx/sites-available/default/etc/nginx/conf.d/default.conf):

    server {
        listen 80;
        server_name example.com;
    
        location / {
            auth_basic "Restricted Area";
            auth_basic_user_file /etc/nginx/.htpasswd;
        }
    }
  4. 测试并重载Nginx配置:

    sudo nginx -t
    sudo systemctl reload nginx

完整示例:

server {
    listen 80;
    server_name mysite.com;

    location /private/ {
        auth_basic "Admin Area";
        auth_basic_user_file /etc/nginx/.htpasswd;

        # 其他配置
        proxy_pass http://localhost:8080;
    }
}