• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
孙龙 程序员
少时总觉为人易,华年方知立业难
博客园    首页    新随笔    联系   管理    订阅  订阅
nginx用户认证配置( Basic HTTP authentication)

ngx_http_auth_basic_module模块实现让访问着,只有输入正确的用户密码才允许访问web内容。web上的一些内容不想被其他人知道,但是又想让部分人看到。nginx的http auth模块以及Apache http auth都是很好的解决方案。

默认情况下nginx已经安装了ngx_http_auth_basic_module模块,如果不需要这个模块,可以加上 --without-http_auth_basic_module 。

nginx basic auth指令

语法:     auth_basic string | off;
默认值:     auth_basic off;
配置段:     http, server, location, limit_except

默认表示不开启认证,后面如果跟上字符,这些字符会在弹窗中显示。

语法:     auth_basic_user_file file;
默认值:     —
配置段:     http, server, location, limit_except

用户密码文件,文件内容类似如下:

nginx认证配置实例

server{
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;


        location /mystatus {
                stub_status;
        }


        location ~ ^/admin.html {
                root  html/auth/;
                auth_basic " auth access test!";
                auth_basic_user_file /application/nginx/auth.conf;
                index index.html index.htm;
        }

}

  

备注:一定要注意auth_basic_user_file路径,否则会不厌其烦的出现403。

生成密码

可以使用htpasswd,或者使用openssl

yum install httpd-tool

htpasswd -c ./auth.conf 用户名 密码

 

本文来自博客园,作者:孙龙-程序员,转载请注明原文链接:https://www.cnblogs.com/sunlong88/articles/9048805.html

posted on 2018-05-16 23:32  孙龙-程序员  阅读(391)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3