nginx代理https站点(亲测)
nginx代理https站点(亲测)
首先,我相信大家已经搞定了nginx正常代理http站点的方法,下面重点介绍代理https站点的配置方法,以及注意事项,因为目前大部分站点有转换https的需要所以学习这个方法也是很重要的,我就不啰嗦了 直奔主题了………………
测试环境
nginx版本 nginx/1.6.3
php版本 5.5.38
mysql版本 5.5.32
前提,后端web节点已经可以同时监听80,443端口(站点可以正常通过web节点访问http和https),具体配置https的方法网上一大堆,大家可以百度一下 生成一个ssl的免费证书 搭建https的web站点, 解析web本机ip的话可以分别实现http和https的访问,(注意:web节点没有设置rewrite规则实现http到https的自动跳转)(如果不需要nginx做web代理 的情况下 web节点需要在location字段下配置rewrite 规则才能实现http到https的自动跳转)
附上后端web nginx配置文件 (phpadmin.ff.com)

我们要做的重点来了
Nginx代理已经分别开启80 和443的同时监听 配置成类似后端web节点的配置,这里我们以phpadmin.ff.com 这个域名进行测试 nginx代理上配置如下
通用配置nginx.conf
为了方便 我的upstream里面只放了一个web节点 另外一个做备份使用,注意我的upstream 并没有在后端加上:443这样的信息

(include)Phpadmin.conf配置(注意红色箭头的部分,如果不加入这条规则 用户必须手动输入https://phpadmin.ff.com才能访问https 而不能实现http到https的自动跳转)

这里标注的地方就是为了实现 http访问到https的自动切换 ,如果不加这条rewrite 需要自己手动输入https://phpadmin.ff.com 访问,
总结:
1.nginx在做http代理时 定义的upstream默认端口号为80 (所以准确来说upstream并不是默认端口就是80,80只是nginx代理的一部分)
2.nginx在做https代理的时候,默认 upstream 是https的协议访问443端口。
3.总之如果web对外提供https http 服务 那么在web上配置https 和http 做一下rewrite
4.如果nginx代理对外提供https http服务 那么在nginx代理上配置https 和http 做一下rewrite ,两个不能同时做rewrite 不然访问日志会爆炸,重定向一个死循环
目前还有的问题就是,做phpadmin的https 没有内容上的不完整显示,做discuz和WordPress的时候无法显示图片和一些网页设计内容(只显示了文本),这个有可能和https协议加密的内容有关。目前只有Google大神把所有内容都做了https处理。一般在登录和做交易的时候会自动跳转到https(可以使用nginx的基于扩展名的rewrite)
nginx代理https站点(亲测)的更多相关文章
- nginx 代理 https 后,应用变成 http
需求:nginx 代理 https,后面的 tomcat 处理 http 请求,sso 的客户端,重定向时需要带上 target,而这个 target 默认是 tomcat 的 http,现在需要把这 ...
- nginx 代理https后,应用redirect https变成http --转
原文地址:http://blog.sina.com.cn/s/blog_56d8ea900101hlhv.html 情况说明nginx配置https,tomcat正常http接受nginx转发.ngi ...
- Discuz x3.2利用阿里云cdn处理https访问亲测教程
第一步配置cdn和https 1.首先去阿里云.腾讯云.七牛云等申请免费https证书 2.虚拟主机是不能直接支持https的,需要cdn处理后才可以,并且端口是80 3.开启cdn加速处理,(买一个 ...
- Nginx针对https站点的部署
一.Nginx安装(略)安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块.Nginx安装方法:# ./configur ...
- 跨域问题Java方式解决及Nginx方式解决【亲测可行】
这两天和前端同事调试微信公众号项目,就遇到了跨域问题:网上相关博客也挺多的,但有很多细节没有点到,在此呢我也再次记录一下解决方式: (算是踩坑日记吧~ ~ ~) !问题发现: 页面加载不出来,控制 ...
- 开启Nginx代理HTTPS功能
1.首先查看是否已经安装SSL openssl version -a 2.生成SSL证书 在nginx目录下创建ssl文件夹 cd /etc/pki mkdir nginx cd nginx 生成20 ...
- IIS 实现http重定向https(亲测有效:解决URL重写模块配置https重定向不生效的问题)
前言 以前部署网站的时候,都是通过代码来实现http重定向https,最近在部署个人网站的时候,突发奇想可不可通过IIS来实现无代码的重定向呢? 在一番操作猛如虎的搜索引擎操作后,发现只有google ...
- 原创:Eclipse 上网代理设置(亲测有效)
直接上图:
- Nginx - 代理、缓存
Nginx 标签 : nginx 代理 代理服务可简单的分为正向代理和反向代理: 正向代理: 用于代理内部网络对Internet的连接请求(如VPN/NAT),客户端指定代理服务器,并将本来要直接发送 ...
随机推荐
- .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法
在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...
- 基于DDD的现代ASP.NET开发框架--ABP系列文章总目录
ABP相关岗位招聘:给热爱.NET新技术和ABP框架的朋友带来一个高薪的工作机会 ABP交流会录像视频:ABP架构设计交流群-7月18日上海线下交流会的内容分享(有高清录像视频的链接) 代码自动生成: ...
- Ajax实现原理,代码封装
都知道实现页面的异步操作需要使用Ajax,那么Ajax到是怎么实现异步操作的呢? 首先需要认识一个对象 --> XMLHttpRequest 对象 --> Ajax的核心.它有许多的属性和 ...
- [原]HAproxy 代理技术原理探究
HAproxy 技术分享 简介 HAProxy是一款提供高可用性.负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件 Features 1.免费 2.能够做到4层以上代理 3.高性能 ...
- 开发者的利器:Docker 理解与使用
困扰写代码的机器难免会被我们安装上各种各样的开发工具.语言运行环境和引用库等一大堆的东西,长久以来不仅机器乱七八糟,而且有些相同的软件还有可能会安装不同的版本,这样又会导致一个项目正常运行了,却不小心 ...
- C#各种同步方法 lock, Monitor,Mutex, Semaphore, Interlocked, ReaderWriterLock,AutoResetEvent, ManualResetEvent
看下组织结构: System.Object System.MarshalByRefObject System.Threading.WaitHandle System.Threading.Mutex S ...
- git 命令总结
1 删除分支 git push origin :branch name(Task_******) //删除远程分支 git branch -D branch name(Task_******) ...
- 「译」JUnit 5 系列:环境搭建
原文地址:http://blog.codefx.org/libraries/junit-5-setup/ 原文日期:15, Feb, 2016 译文首发:Linesh 的博客:环境搭建 我的 Gith ...
- 监控 SQL Server (2005/2008) 的运行状况
Microsoft SQL Server 2005 提供了一些工具来监控数据库.方法之一是动态管理视图.动态管理视图 (DMV) 和动态管理函数 (DMF) 返回的服务器状态信息可用于监控服务器实例的 ...
- Handler
1.1 继承AbstractController优点:能定制请求方式 package cn.happyl.controller; import javax.servlet.http.HttpServl ...