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 ...
随机推荐
- Integer to Roman - LeetCode
目录 题目链接 注意点 解法 小结 题目链接 Integer to Roman - LeetCode 注意点 考虑输入为0的情况 解法 解法一:从大到小考虑1000,900,500,400,100,9 ...
- ThinkPHP 5.x远程命令执行漏洞分析与复现
0x00 前言 ThinkPHP官方2018年12月9日发布重要的安全更新,修复了一个严重的远程代码执行漏洞.该更新主要涉及一个安全更新,由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的 ...
- Android Launcher分析和修改
Android Launcher分析和修改 http://www.cnblogs.com/mythou/category/499819.html Android Launcher分析和修改1——Lau ...
- JavaScript演示下Singleton设计模式
单例模式的基本结构: MyNamespace.Singleton = function() { return {}; }(); 比如: MyNamespace.Singleton = (functio ...
- 图像处理之CSC色彩转换
1 YUV域介绍 根据三基色原理,任意一种色光F都可以用不同分量的R.G.B三色相加混合而成,即F = r [ R ] + g [ G ] + b [ B ],其中r.g.b分别为三基色参与混合的系数 ...
- Hadoop生态圈-Hive快速入门篇之HQL的基础语法
Hadoop生态圈-Hive快速入门篇之HQL的基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客的重点是介绍Hive中常见的数据类型,DDL数据定义,DML数据操作 ...
- Java基础-面向对象第一特性之封装(Encapsulation)
Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...
- day9 类、对象、包
结构化编程中,程序围绕要解决的问题来设计. 面向对象编程,围绕要解决问题的对象来设计. 万物皆对象,对象因关注而产生!!! 类——抽取具有相同属性和行为的对象. 属性就是对象身上的值数据,行为就是对象 ...
- Nlog写日志到数据库
https://github.com/nlog/NLog/wiki/Database-Target
- poj 2728 Desert King (最优比率生成树)
Desert King http://poj.org/problem?id=2728 Time Limit: 3000MS Memory Limit: 65536K Descripti ...
