Nginx 配置 Basic 认证
/*
* 环境:LNMP(CentOS 6.6 + Nginx 1.8.0)
*/
在 Nginx 下配置 Basic 认证需要依靠 Nginx 的 http_auth_basic_module 模块(官方文档:http://nginx.org/en/docs/http/ngx_http_auth_basic_module.html)
配置过程:
① 生成认证文件,形式为 用户名:密码
密码采用 crypt 方式加密(用户名:user ,密码:123456)
文件保存在 /usr/local/nginx/conf 下
生成文件:
[root@localhost conf]# printf "user:$(openssl passwd -crypt 123456)\n" >>htpasswd

查看该文件:

② 配置 /usr/local/nginx/conf/nginx.conf 文件,在 location 段中加上 auth_basic 和 auth_basic_user_file :
location \ {
auth_basic "login";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
}
其中 auth_basic 为弹出框的提示语,可自定义
auth_basic_user_file 为认证文件的路径,可以写绝对路径,也可以只写文件名(默认的路径是 /usr/local/nginx/conf )
平滑重启 Nginx。
此时访问 192.168.254.100,提示认证:

如果输入错误,弹出框会继续弹出;
如果取消输入,则响应 401 Unauthorized:

输入正确,则响应 200 OK。
=====================
附:PHP 模拟 Basic 认证
<?php $user = 'dee';
$pwd = '12345'; if($_SERVER['PHP_AUTH_USER'] != $user ||
$_SERVER['PHP_AUTH_PW'] != $pwd
) {
header('Content-type:text/html;charset=utf-8');
header('WWW-Authenticate: Basic realm="加密传输"');
header('HTTP/1.1 401 Unauthorized');
echo '请提供正确的用户名和密码';
exit;
} echo 'Hello';
参考:
http://blog.chenlb.com/2010/03/nginx-http-auth-basic.html
http://www.jb51.net/article/32211.htm
http://os.51cto.com/art/201308/407232.htm
Nginx 配置 Basic 认证的更多相关文章
- nginx 配置用户认证
nginx 配置用户认证有两种方式: 1.auth_basic 本机认证,由ngx_http_auth_basic_module模块实现.配置段: http, server, location, li ...
- Apache 配置 Basic 认证
/* * 环境:WAMP( Windows7 + WampServer2.2(Apache 2.2.21)) */ 配置过程: ① 生成用户文件,文件路径可以使用绝对路径,也可以使用相对路径 进入 a ...
- nginx配置用户认证
location ~ .*admin\.php$ { auth_basic "weifenglinux auth"; auth_ba ...
- LNMP配置——Nginx配置 —— 用户认证
一.配置 再来创建一个新的虚拟主机 #cd /usr/local/nginx/conf/vhost #vi test.com.conf 写入: server { listen 80; server_n ...
- 使用crypt配置Basic Auth登录认证
简介 Basic Auth用于服务端简单的登录认证,通常使用服务器Nginx.Apache本身即可完成.比如我们要限定某个域名或者页面必须输入用户名.密码才能登录,但又不想使用后端开发语言,此时Bas ...
- Nginx配置单项SSL以及双向SSL
Https安全协议的由来? 在实现 HTTPS协议前,我们需要了解 SSL 协议,但其实我们现在使用的更多的是 TLS 加密通讯协议. 那么TLS是怎么保证明文消息被加密的呢?在OSI七层模型中,应用 ...
- NGINX 配置 SSL 双向认证
对于 NGINX 的 HTTPS 配置,通常情况下我们只需要实现服务端认证就行,因为浏览器内置了一些受信任的证书颁发机构(CA),服务器端只需要拿到这些机构颁发的证书并配置好,浏览器会自己校验证书的可 ...
- nginx配置ssl加密(单双向认证、部分https)
nginx配置ssl加密(单双向认证.部分https) nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始 ...
- nginx配置SSL实现服务器/客户端双向认证
http://blog.csdn.net/kunoy/article/details/8239653 本人不才,配置了两天,终于搞出来了,结合网上诸多博文,特此总结一下! 配置环境: Ubuntu 1 ...
随机推荐
- GCM 发送接收消息 Message Client Server 服务器端,客户端
GCM 传递参数 最近用了很多时间做GCM,由于碰到很多问题,因此详细做一下记录,以方便各位网友,不用再走我的重复的路.不过我试了一下GCM在国内很不好用.假如开发国外的程序的话,用GCM倒是很不错的 ...
- Android之圆角矩形
安卓圆角矩形的定义 在drawable文件夹下,定义corner.xml <?xml version="1.0" encoding="utf-8"?> ...
- javac编译提示编码GBK的不可映射字符
使用命令行javac命令编译java文件, 提示错误:编码GBK的不可映射字符. 在编译的时候,如果我们没有用-encoding参数指定我们的JAVA源程序的编码格式,则javac.exe会获得我们操 ...
- jquery easy ui 1.3.4 表单(7)
7.1.ValidateBox(表单验证) 使用validType属性指定验证方法 1.标签方式创建 <input type="text" class="easyu ...
- javascript字典数据结构常用功能实现
必知必会啊. function Dictionary(){ var items = {}; this.has = function (key) { return key in items; }; th ...
- sdut 2163:Identifiers(第二届山东省省赛原题,水题)
Identifiers Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 Identifier is an important c ...
- php session跨页面传递 session值丢失问题
.session_start();应该尽量放置到页面的顶部: .如果php.ini里面没有配置 session Autostart的话,每次会话之前,都得手动开启session:session_sta ...
- FileUpload之FileItem
转自:http://asialee.iteye.com/blog/706079 FileItem类主要是封装了一个File Item或者是FormItem,它的主要的方法如下,需要说明的是对于Form ...
- Codeforces Gym 100637A A. Nano alarm-clocks 前缀和处理
A. Nano alarm-clocks Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100637/p ...
- 最短路(Dijkstra) POJ 1062 昂贵的聘礼
题目传送门 /* 最短路:Dijkstra算法,首先依照等级差距枚举“删除”某些点,即used,然后分别从该点出发生成最短路 更新每个点的最短路的最小值 注意:国王的等级不一定是最高的:) */ #i ...