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站点(亲测)的更多相关文章

  1. nginx 代理 https 后,应用变成 http

    需求:nginx 代理 https,后面的 tomcat 处理 http 请求,sso 的客户端,重定向时需要带上 target,而这个 target 默认是 tomcat 的 http,现在需要把这 ...

  2. nginx 代理https后,应用redirect https变成http --转

    原文地址:http://blog.sina.com.cn/s/blog_56d8ea900101hlhv.html 情况说明nginx配置https,tomcat正常http接受nginx转发.ngi ...

  3. Discuz x3.2利用阿里云cdn处理https访问亲测教程

    第一步配置cdn和https 1.首先去阿里云.腾讯云.七牛云等申请免费https证书 2.虚拟主机是不能直接支持https的,需要cdn处理后才可以,并且端口是80 3.开启cdn加速处理,(买一个 ...

  4. Nginx针对https站点的部署

    一.Nginx安装(略)安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块.Nginx安装方法:# ./configur ...

  5. 跨域问题Java方式解决及Nginx方式解决【亲测可行】

    这两天和前端同事调试微信公众号项目,就遇到了跨域问题:网上相关博客也挺多的,但有很多细节没有点到,在此呢我也再次记录一下解决方式: (算是踩坑日记吧~ ~ ~)   !问题发现: 页面加载不出来,控制 ...

  6. 开启Nginx代理HTTPS功能

    1.首先查看是否已经安装SSL openssl version -a 2.生成SSL证书 在nginx目录下创建ssl文件夹 cd /etc/pki mkdir nginx cd nginx 生成20 ...

  7. IIS 实现http重定向https(亲测有效:解决URL重写模块配置https重定向不生效的问题)

    前言 以前部署网站的时候,都是通过代码来实现http重定向https,最近在部署个人网站的时候,突发奇想可不可通过IIS来实现无代码的重定向呢? 在一番操作猛如虎的搜索引擎操作后,发现只有google ...

  8. 原创:Eclipse 上网代理设置(亲测有效)

    直接上图:

  9. Nginx - 代理、缓存

    Nginx 标签 : nginx 代理 代理服务可简单的分为正向代理和反向代理: 正向代理: 用于代理内部网络对Internet的连接请求(如VPN/NAT),客户端指定代理服务器,并将本来要直接发送 ...

随机推荐

  1. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  2. CSS样式重置(转)

    body,h1,h2,h3,h4,h5,h6,dl,dt,dd,ul,ol,li,th,td,p,blockquote,pre,form,fieldset,legend,input,button,te ...

  3. HotApp小程序服务范围资质查询器

    微信小程序提交审核需要选择资质服务范围,如果服务范围不对,审核会不通过, 开发小程序之前,最好先查询所开发小程序的资质范围,否则无法通过微信审核.   小程序的资质范围查询地址,数据同步微信官方 ht ...

  4. Crystal Clear Applied: The Seven Properties of Running an Agile Project (转载)

    作者Alistair Cockburn, Crystal Clear的7个成功要素,写得挺好. 敏捷方法的关注点,大家可以参考,太激动所以转载了. 原文:http://www.informit.com ...

  5. 【Star CCM+实例】开发一个简单的计算流程.md

    流程开发在CAE过程中处于非常重要的地位. 主要的作用可能包括: 将一些经过验证的模型隐藏在流程中,提高仿真的可靠性 将流程封装成更友好的界面,降低软件的学习周期 流程开发实际上需要做非常多的工作,尤 ...

  6. kvm上的Linux虚拟机使用virtio磁盘

    kvm上的Linux虚拟机使用virtio磁盘 系统:centos6.6  64位 网上的文章比较少,怎麽将Linux虚拟机的磁盘改为使用virtio磁盘 因为centos6或以上系统已经包含了vir ...

  7. Ubuntu(Linux) + mono + jexus +asp.net MVC3 部署

    感谢  张善友 的建议,我把 微信订餐  由nginx 改成 jexus,目前运行状况来说,确实稳定了很多,再次感谢. 部署步骤参考 jexus官网:http://www.jexus.org/ htt ...

  8. Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用

    概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...

  9. 《深入理解Java虚拟机》类文件结构

    上节学习回顾 在上一节当中,主要以自己的工作环境简单地介绍了一下自身的一些调优或者说是故障处理经验.所谓百变不离其宗,这个宗就是我们解决问题的思路了. 本节学习重点 在前面几章,我们宏观地了解了虚拟机 ...

  10. 【技巧】使用weeman来做一个钓鱼网页

    本文来自网友836834283 对玄魂工作室的投稿. 工具项目地址:https://github.com/Hypsurus/weeman/ 克隆地址:https://github.com/Hypsur ...