一. 相关概念介绍

1. SSL证书服务

  SSL证书服务由"服务商"联合多家国内外数字证书管理和颁发的权威机构、在xx云平台上直接提供的服务器数字证书。您可以在阿里云、腾讯云等平台上直接购买、或者免费获取所需类型的数字证书,并一键部署在云产品中,以最小的成本将您的服务从HTTP转换成HTTPS,实现网站的身份验证和数据加密传输。

2. 什么是数字证书?

  数字证书是一个经权威授权机构数字签名、包含公开密钥拥有者信息以及公开密钥的文件,是权威机构颁发给网站的可信凭证。最简单的证书包含一个公开密钥、证书名称以及证书授权中心的数字签名。

  数字证书还有一个重要的特征:只在特定的时间段内有效。

3. 什么是SSL?

 SSL协议是一种可实现网络通信加密的安全协议,可在浏览器和网站之间建立加密通道,保障数据在传输的过程中不被篡改或窃取。

4. 什么是SSL证书?

  SSL证书采用SSL协议进行通信,是由权威机构颁发给网站的可信凭证。

  SSL证书采用SSL协议进行通信。SSL证书部署到Web服务器后,Web服务器访问将启用HTTPS协议。您的网站将会通过 HTTPS 加密协议来传输数据,可帮助Web服务器和网站间建立可信的加密链接,从而保证网络数据传输的安全。

5. 什么是Https?

  HTTPS是一种基于SSL协议的网站加密传输协议。

    网站安装SSL证书后,使用HTTPS加密协议访问,可激活客户端浏览器到网站服务器之间的SSL加密通道(SSL协议),从而实现高强度双向加密传输,防止传输数据被泄露或篡改。HTTPS 也就是HTTP + SSL,是HTTP的安全版。

6. 什么是CA认证中心?

  CA认证中心(CA机构),即证书授权中心(Certificate Authority),或称证书授权机构。

  CA认证中心作为电子商务交易中受信任的第三方,承担公钥体系中公钥合法性检验的责任。

7. 应用场景

(1). 将用户网站服务由Http改为Https协议。

(2). CDN、SCDN、DCDN或SLB服务上使用HTTPS协议。

二. SSL证书申请

 下面以阿里云平台为例,介绍SSL证书的申请。

1. 登录阿里云官网(https://www.aliyun.com/),进入SSL证书板块,并点击“立即购买”。

2. 这里有多种证书,我们选择免费版单域名证书的即可。(阿里云平台免费签发20个证书),然后立即购买→确认订单→购买成功→进入证书控制台。

3. 进入“证书控制台”,在“未签”模块会看到刚才购买的证书,点击申请,需要绑定域名(一旦绑定,则不能修改)。

 注意:如果该域名不在该账户下,会进行提示,并且需要去域名所在的账户下进行一下DNS解析配置(配置完后,这边证书验证通过后,删掉这条解析记录即可)。

补充步骤:去域名所在的账户下进行DNS解析,解析完后,再去证书账户下继续,验证,验证成功,进入待审核状态。

4. 审核完成,下载对应版本的证书即可(IIS版本)

三. SSL证书的配置(IIS)

1. 开始→运行→输入"MMC",进入"控制台根节点"。

2. 选择菜单“文件”中的”添加/删除管理单元”-> “添加”,从“添加或删除管理单元”列表中选择“证书”,点击添加,进入证书管理单元,选择“计算机帐户”,点击下一步,进入“选择计算机”页面,选择"本地计算机",点击完成

4. 回到最初MMC进入的控制台页面,依次进入:控制根节点→证书(本地计算机)→个人→证书,然后右键,选择所有任务→导入,进入证书导入页面。

5. 选中证书,输入密码,将证书导入即可。(此过程当中有一步非常重要: “根据证书内容自动选择存储区”)

导入成功,会在控制台页面显示。

6. 在IIS中绑定证书即可,默认的HTTPS请求为443端口,如果改成别的话,域名后面还需要跟着端口。

7. 大功告成,以HTTPS开头,访问该域名,正常访问。

四. 跳转Https请求的两种方式

背景:我们网站项目只想保留https请求,不想开放http请求,但有些老用户已经习惯了通过http的地址进行访问,针对这种情况,我们想达到效果是,以http的形式访问我们网站,会自动切换成https的。

方案一:

1. 在IIS上新建一个项目,eg:01-80Redirect,物理路径可以绑定一个空的文件夹,将域名 xxx.xxx.com绑到80端口上。

2. 删掉原项目上绑定的80端口,仅保留443端口。

3. 给01-80Redirect,配置【Http重定向】,重定向到:https://djdt.xxx.com$V$Q ($V$Q代表这个域名下的所有子文件都跳转),勾选:“将所有请求重定向到确切目标”,状态代码选择:“永久301”,进行保存,重启这两个项目。

4. 大功告成, 访问:http://djdt.xxx.com,直接跳转到:https//djdt.xxx.com

方案二:仅针对Asp.Net Core项目

1. 在ConfigureServices进行注册跳转到Https的端口,即:凡是Http请求该网站,都会以Https的方式跳转到该接口上。

2. 在Configure中进行管道拦截,进行https的跳转。

3. 发布项目,在IIS中进行端口设定,同时绑定Http请求和Https请求,https请求的绑定要使用上述代码中配置的端口,如下图,访问:http://localhost:8077, 会自动跳转到https://localhost:8088

!

  • 作       者 : Yaopengfei(姚鹏飞)
  • 博客地址 : http://www.cnblogs.com/yaopengfei/
  • 声     明1 : 本人才疏学浅,用郭德纲的话说“我是一个小学生”,如有错误,欢迎讨论,请勿谩骂^_^。
  • 声     明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
 

第二节:SSL证书的申请、配置(IIS通用)及跳转Https请求的两种方式的更多相关文章

  1. JAVA发送http GET/POST请求的两种方式+JAVA http 请求手动配置代理

    java发送http get请求,有两种方式. 第一种用URLConnection: public static String get(String url) throws IOException { ...

  2. 阿里云申请免费SSL证书,并配置到Tomcat,实现https访问

    第一步:阿里云免费https证书安装  https://jingyan.baidu.com/article/fdffd1f8619481f3e98ca196.html 第二步:阿里云申请免费SSL证书 ...

  3. 有了SSL证书,如何在IIS环境下部署https?【转载】

    昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒...本来小编也挺懒的,但是答应了各位小伙伴的,那么 ...

  4. ssl证书 以及phpstudy配置ssl证书

    首先,确保你的Apache编译了SSL模块,这是支持SSL证书必要的条件(如果没有,请编译,[打开phpstudy]>[其他选项菜单]>[PHP扩展]>[php-openssl]前面 ...

  5. StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全

    StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全 一.StartSSL个人证书登录申请 1.StartSSL官网: 1.官方首页:http://www.startssl.com/ 2 ...

  6. 国密SSL证书免费试用申请指南

    沃通提供国密SSL证书免费申请试用服务,一次申请可同时签发SM2/RSA双算法证书,试用周期1个月,用于测试国密SM2 SSL证书的运行效果和SM2/RSA双证书部署效果. 试用产品:SM2/RSA双 ...

  7. Nginx配置同一个域名同时支持http与https两种方式访问

    Nginx配置同一个域名http与https两种方式都可访问,证书是阿里云上免费申请的 server{listen 80;listen 443 ssl;ssl on;server_name 域名;in ...

  8. WCF服务使用(IIS+Http)和(Winform宿主+Tcp)两种方式进行发布

    1.写在前面 刚接触WCF不久,有很多地方知其然不知其所以然.当我在[创建服务->发布服务->使用服务]这一过程出现过许多问题.如客户端找不到服务引用:客户端只在本机环境中才能访问服务,移 ...

  9. nginx开启ssl并把http重定向到https的两种方式

    1 简介 Nginx是一个非常强大和流行的高性能Web服务器.本文讲解Nginx如何整合https并将http重定向到https. https相关文章如下: (1)Springboot整合https原 ...

随机推荐

  1. 简单的纯js三级联动

    参考这个  日尼禾尔  二级联动 写了三级联动 <!DOCTYPE html> <html> <head> <meta charset="UTF-8 ...

  2. svn上传*.so文件

    做移动开发,android里面需要用到第三方类库,设计"*.so"文件. svn无法提交,Eclipse里面的svn视图里面该文档无版本图标. 原因描述:svn忽略某些扩展名的文件 ...

  3. eclipse启动报.log错误

    解决办法: windows: D:\Program Files\eclipse\eclipse.ini 在文件末尾添加一行: --add-modules=ALL-SYSTEM

  4. 5G来了,中国移动能力开放平台的NFV,支持面向5G的演进,已经具备初期商用条件!

    近日互联网招聘平台发布的<2019春招旺季人才趋势报告>显示,“新新职业”人才受到企业追捧: 5G相关人才需求大幅增长,5G工程师平均招聘月薪达1.39万元,同比增长12.2%.其中,光传 ...

  5. linux的自有(内置)服务

    运行模式(运行级别) 在linux中存在一个进程,init(initialize初始化)进程号为1 ,该进程对应一个配置文件inittab 文件路径为/etc/inittab centOS6.5存在7 ...

  6. HTML基础-------HTML标签(3)

    HTML标签(3) 表格 作用:制作一个表格 属性: 标签;table>tr>td(或者th) 语义; table:一个表格 tr:一行 td:一个单元格 th:单元格的表头 captio ...

  7. 发布时一键添加html中的css标签和script标签版本号来防止浏览器缓存

    AppendFileVersion 是一个VSIX插件支持vs2015意以上版本 是我用来发布时一键添加html中的css标签和script标签版本号来防止浏览器缓存 分享给大家! download ...

  8. servlet运行机制、Request内置对象和服务器端跳转

    servlet运行机制: 当发送一个请求到服务器的时候,容器(Tomcat)会判断该路径属于哪一个 Servlet 进行处理,Servlet 有一个抽象父类“HttpServlet”,这个类是一个模板 ...

  9. 个人jQuery的使用总结

    一.使用方法 参考内容有: http://www.w3school.com.cn/jquery/jquery_ref_events.asp http://www.cnblogs.com/zhangzi ...

  10. C++开发python windows版本的扩展模块示例

    C++开发python windows版本的扩展模块示例 测试环境介绍和准备 测试环境: 操作系统:windows10 Python版本:3.7.0 VS版本:vs2015社区版(免费) 相关工具下载 ...