Nginx实现代理和用户验证
1.下载Nginx
首先去官网http://nginx.org/en/download.html下载需要的版本即可,无需安装,只需要打开nginx.exe文件,nginx.exe的服务就开启了。打开http://localhost/就可以看到nginx启动成功的信息。默认情况下nginx已经安装了ngx_http_auth_basic_module模块。
2.配置server
打开nginx.conf文件中,增加一个server的监控,代码如下:
server {
#监听端口号
listen 8081;
auth_basic "config Auth";
#密码地址
auth_basic_user_file D:\config.password;
location / {
#代理地址
proxy_pass http://192.168.21.1:8088/;
proxy_redirect default;
}
}
其中auth_basic_user_file可以使用htpasswd,或者使用openssl,htpasswd可以使用apach2-utils在linux生成。
添加完成之后,重新启动Nginx服务,这是打开相应的网站,就会弹出一个这样的输入框,输入响应的用户名和密码,即可访问网站。
输入相应的用户名和密码,即可访问网站。
3.401 Authorization Required问题
现在能访问静态页面,但是请求数据的接口会返回一个401 Authorization Required的错误回来,如下图,
这是由于接口没有配置相应的Authorization header,所以我们需要在请求的接口配置Authorization header,格式为‘Basic ’+用户名:密码,用户名:密码需要使用base64加密下,代码如下,
'Authorization':"Basic "+Base64.encode("test:123")
请求效果如下:
如果需要修改密码或是用户名,替换auth_basic_user_file 文件就可以了
Nginx实现代理和用户验证的更多相关文章
- nginx反向代理获取用户真实ip
nginx做反向代理时,默认的配置后端获取到的ip都是来自于nginx,如何转发用户的真实ip到后端程序呢?如是是java后端,用request.getRemoteAddr();获取到的是nginx的 ...
- Nginx 反向代理接收用户包体方式
陶辉91课 如果proxy_request_buffering 设置为on的时候是等待nginx读取完包体后再发送上游服务器 一般依赖于nginx处理能力 client_body_in_file_o ...
- 由Nginx反向代理引出的JCaptcha验证码验证失败的问题
搜索关键字: 1)Windows本地开发正常,部署到Linux远程服务器上JCaptcha验证失败 2)Linux远程服务器上JCpatcha验证失败 3)Nginx反向代理后JCaptcha验证失败 ...
- nginx 反向代理 和lvs负载均衡
nginx反向代理:用户请求nginx代理服务器然后代理服务器将用户请求转为服务器再由nginx代理服务器将服务器的响应反应给用户. lvs负载均衡:用户请求nginx代理服务器然后代理服务器将用户请 ...
- nginx 反向代理 负载均衡
nginx反向代理 用户(浏览器) 请求网站资源 -> 直接定位到django后台(所有的请求压力,都直接给了后台) django默认对并发性 很差,并且处理网页的静态资源,效率很差 10万个并 ...
- 跨域问题,解决方案-Nginx反向代理
跨域问题,解决之道 跨域问题,在日常开发过程中,是一个非常熟悉的名词.今天的话题,结合我之前的项目场景,讨论下<跨域问题,解决之道>. 跨域是什么 跨域问题,是由于JavaScript出于 ...
- 高级运维(二):搭建Nginx服务器、用户认证、基于域名的虚拟主机、SSL虚拟主机、Nginx反向代理
一.搭建Nginx服务器 目标: 在IP地址为192.168.4.5的主机上安装部署Nginx服务,并可以将Nginx服务器,要求编译时启用如下功能: 1> SSL加密功能 2> 设置Ng ...
- 转:设置HtmlUnitDriver代理及处理用户验证有关问题
selenium2 提供了一种无ui模式的driver,即htmlunitdriver.特点运行比较快.其实htmlunitdriver 是对htmlunit 的封装,这样大家就可以使用自己习惯sel ...
- Nginx反向代理+Tomcat+Springmvc获取用户访问ip
Nginx+Tomcat+Springmvc获取用户访问ip 1.Nginx反向代理 修改Nginx配置文件 location / { ***********之前代码*******; proxy_se ...
随机推荐
- C#基础-代码部署数据库及IIS站点
一.前言 最近忙里偷闲,做了一个部署数据库及IIS网站站点的WPF应用程序工具. 二.内容 此工具的目的是: 根据.sql文件在本机上部署数据库 在本机部署IIS站点,包括 ...
- 51nod 1564 区间的价值 | 分治 尺取法
51nod 1564 区间的价值 题面 一个区间的价值是区间最大值×区间最小值.给出一个序列\(a\), 求出其中所有长度为k的子区间的最大价值.对于\(k = 1, 2, ..., n\)输出答案. ...
- 【Cf #503 C】Sergey's problem(有趣的构造)
感觉这种构造题好妙啊,可我就是想不到诶. 给出一张无自环的有向图,回答一个独立集,使得图中任意一点都可以被独立集中的某一点两步之内走到. 具体构造方案如下: 下标从小到大枚举点,如果该点没有任何标记, ...
- 【bzoj1026】 SCOI2009—windy数
http://www.lydsy.com/JudgeOnline/problem.php?id=1026 (题目链接) 题意 在区间${[A,B]}$有多少个数相邻两个数位上的数之差至少为2. Sol ...
- CVE-2018-1111劫持dhcp造成centos代码执行漏洞
0x01 漏洞概述 近日,红帽官方发布了安全更新,修复了编号为CVE-2018-1111的远程代码执行漏洞,攻击者可以通过伪造DHCP服务器发送响应包,攻击红帽系统,获取root权限并执行任意命令. ...
- Mac上安装python3并设置SublimeREPL插件默认运行python3
1.安装python3 $ brew search python $ brew install python3 这里安装完后不需要单独添加环境变量,程序已经处理好,可以直接运行python3命令. $ ...
- 设计模式 (一)——策略模式(Strategy,行为型)
1.概述 使用设计模式可以提高代码的可复用性.可扩充性和可维护性.策略模式(Strategy Pattern)属于行为型模式,其做法是将类所需的行为或者算法一个个封装成单独的类,并将其作为类的数据成员 ...
- Activity的setResult方法
Activity的setResult方法http://blog.csdn.net/dinglin_87/article/details/8970144 调用setResult()方法必须在finish ...
- R画图
画图函数中的参数: 1.图形元素参数: pch:用于显示点的坐标,可以是一个字符,也可以是0到25的一个整数.如:pch=“+”,pch=1 lty:线条类型.如:lty=2,lty=1 lwd:线条 ...
- Linux运维四:文件属性及文件权限
一:文件属性 我们使用ls -lhi命令来查看文件时,会列出一堆的文件属性,如: [root@Gin day7]# ll -hi total 7.8M 260674 -rw-r--r-- 1 root ...