利用nginx向现有网站添加登录验证功能(不添加修改现有网站代码)
2016-11-28 17:23
489 查看
在不改变现有网站代码的前提下加入验证功能:
1.假设现有网站后端nodejs,端口3000,nginx配置如下
2.现在要为该网站添加验证功能,在不改变原有代码基础上需要做如下工作:
a.首先需要为nginx加入http_auth_request模块(附件),若nginx版本1.5.4+则无需添加该模块
b.新建node.js express网站,端口3001,并添加登录验证功能:
c.修改nginx配置文件如下:
原理:访问80端口,先由auth_request将request送至/auth验证请求,如果是验证了的则返回200,nginx继续将请求发送至3000端口,如果/auth返回403,则nginx不会将请求发送至3000端口,最后定义一下403的位置即可。
1.假设现有网站后端nodejs,端口3000,nginx配置如下
server { listen 80; server_name localhost; location /{ proxy_pass http://localhost:3000; } }
2.现在要为该网站添加验证功能,在不改变原有代码基础上需要做如下工作:
a.首先需要为nginx加入http_auth_request模块(附件),若nginx版本1.5.4+则无需添加该模块
b.新建node.js express网站,端口3001,并添加登录验证功能:
c.修改nginx配置文件如下:
server { listen 80; server_name localhost; location /{ auth_request /auth; proxy_pass http://localhost:3000; } location /auth{ proxy_pass http://localhost:3001; proxy_pass_request_body off; proxy_set_header Content-Length ""; proxy_set_header X-Original-URI $request_uri; } location /login{ proxy_pass http://localhost:3001; } error_page 403 /login; }
原理:访问80端口,先由auth_request将request送至/auth验证请求,如果是验证了的则返回200,nginx继续将请求发送至3000端口,如果/auth返回403,则nginx不会将请求发送至3000端口,最后定义一下403的位置即可。
相关文章推荐
- 利用nginx向现有网站添加登录验证功能(不添加修改现有网站代码)
- 基本创建网站的代码:添加,修改,删除
- 登录验证---添加验证码验证,Cookie保存功能
- python 利用selenium模拟登录帐号验证网站并获取cookie
- SSH网站实录(6)登录模块添加验证器进行表单验证
- ShopEx customSchema 定制可以根据客户的需求对网站进行相应功能的添加修改或者删除
- DEDECMS添加运行代码功能的FCKeditor编辑器修改方法
- 设计技巧39:利用Visitor模式实现对现有数据的封装和功能的添加
- MVC5 网站开发之八 栏目功能 添加、修改和删除
- 利用Zend_Form_Element_Captcha 实现登录验证的验证码功能
- 添加现有项目来重用代码。使用编译功能查找错误。
- 网站用户登录、注册和修改密码常用代码,采用三层架构
- 添加AD验证(域身份验证)到现有网站
- 利用静态内部类为您的代码添加辅助功能
- 一行代码给网站添加功能
- 利用DhtmlXtree实现展现,修改,添加,删除,移动功能一棵树上实现,iframe的单个滑动条显示,包含在iframe中树节点中文内容过长问题解决
- 利用Nginx反向代理功能解决WEB网站80端口被封的解决方法
- 有关韩顺平视频servlet网站登录数据库验证的代码,没验证成功待解决的
- 利用java模拟网站登录程序代码
- iOS实战演练之关于数据交互的问题(利用XAMPP搭建本地服务器, 编写PHP代码实现iOS端注册登录功能)