Nginx配置SSL证书将网站从HTTP升级到HTTPS

一、前言

  • 什么是HTTPS以及什么是SSL?

HTTPS全称是:超文本安全传输协议,可以简单理解为使用SSL加密传输的HTTP协议,HTTP的默认端口是80,HTTPS的默认端口是443。SSL是为网络通信提供安全及数据完整性的一种安全协议。http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html

  • 为什么要使用HTTPS

为了保护信息传输的安全性,数据完整性。让访客觉得网站可信任,对于国内的网络环境,也可以防止宽带运营商强制给网站挂广告。

二、操作步骤

  • 1、申请免费SSL证书

https://console.qcloud.com/ssl?apply=1&fromSource=ssl

目前腾讯云有免费的SSL证书申请入口,而且发放速度极快,尤其是放在DNSPOD解析的域名。

  • 2、Nginx配置示例

(1) Nginx配置SSL

server {
    listen 443;          #监听443端口
    server_name  baidu.io;    #监听的域名
    ssl on; #开启SSL
    ssl_certificate     /webroot/ssl/ken.io.crt;    #证书文件
    ssl_certificate_key /webroot/ssl/ken.io.key;    #私钥文件
    location / {                #转发或处理
        proxy_pass http://www.baidu.com;
    }
}

(2)Nginx将HTTP请求301重定向到HTTPS

server {
    listen 80;        #监听80端口
    server_name  baidu.io www.baidu.io; #监听的域名
    return 301 https://baidu.io$request_uri;
}

三、备注

如果升级到HTTPS之后,浏览器提示您与此网站之间建立的连接并非完全安全,那应该是站点引用了非HTTPS站点的资源。这个时候有以下几种方法:

序号

方法

1

将公共静态资源选择引用公共CDN,比如:http://www.bootcdn.cn/

2

将自定义的css、图片等静态资源放在七牛云或者又拍云

3

将自定义的css、图片等静态资源放在站点下(不推荐)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ESOFAR博客专栏

快速签发Let's Encrypt证书指南

本文仅记录给自己的网站添加“小绿锁”的动手操作过程,不涉及HTTPS工作原理等内容的讲解,感兴趣的同学可以参考篇尾的文章自行了解。

15860
来自专栏DOTNET

asp.net web api 使用自签名SSL证书

1自签名SSL证书的创建 创建自签名SSL工具xca为:https://sourceforge.net/projects/xca/ 创建过程 1)创建根证书 打...

39070
来自专栏java思维导图

【原创】nginx配置https的部署实践

http以明文的形式在浏览器和服务器之间交换数据,没有任何数据加密,攻击者可以在截取之间的信息并读懂,这明显不安全,所以现在浏览器浏览器都要求网站域名配置SSL...

35850
来自专栏云计算与大数据

研发:http协议,什么是混合内容

混合内容在以下情况下出现:初始 HTML 内容通过安全的 HTTPS 连接加载,但其他资源(例如,图像、视频、样式表、脚本)则通过不安全的 HTTP 连接加载。...

13230
来自专栏gaoqin31

linux挂载windows共享目录

3.  进入控制面板->网络和共享中心->更改高级共享设置->密码保护的共享->关闭密码保护共享

58320
来自专栏刺客博客

PHP登陆使用验证码判断

36960
来自专栏主机笔记

把linux设置成使用密钥登录

平常使用服务器,因为是在互联网中,只要知道端口密码和ip就可以登录,方便的同时也带来了一定的安全隐患,今天就介绍一个把密码禁用,使用密钥登录的方法,这样就实现了...

49860
来自专栏龙首琴剑庐

Tomcat6/7应用服务器-禁用RC4等弱密码套件

最近更新了新版浏览器的同学是不是偶尔会遇到SSL加密协议不灵,访问不了的情况? 最典型的例子是使用FF39+访问某些网站时报错:Error code: ssl...

48650
来自专栏虚拟化云计算

qemu-libvirt-磁盘加密

# qemu-img convert -f qcow2 -O qcow2 -o encryption template.img encry.qcow2

56880
来自专栏农夫安全

【补充】任意密码重置姿势

跟第三个有点类似,只判断了接收端和验证码是否一致,未判断接收端是否和用户匹配,因此修改接收端可达到重置目的

12920

扫码关注云+社区

领取腾讯云代金券