.Net Core API 发布到IIS后,如何配置SSL详细步骤

一、首先,我们要将API发布到IIS,不脱机工作。但是这里会有问题,调用接口时,会返回

       

 

 

      也就是说,我们需要配置SSL。接下来我们就来详细说明。

二、域名商提供SSL证书审核。

        我的域名提供商是腾讯,直接百度如任何申请SSL证书就好。可以是免费的,我申请的是1年的免费SSL。

        申请审核的时间大致是1个工作日,我的是4小时。成功后返回的是短信或者邮箱。

三、下载证书。

        登录腾讯云,下载。

        

 

 

四、使用

      下载之后解压,里面有很多不同的文件。我们是发布到IIS,所以选择IIS的文件。里面有证书文件和密码,待会儿我们会用到。如果是其他的平台,请对应选择哈。

                

 

 

 五、配置。

        1、打开IIS管理器 → 点击左侧列表最顶级的IIS服务器名 → 双击右侧功能视图的“服务器证书”进入服务器证书配置页。

                      

      2、在服务器证书配置页中,点击右侧操作列表的“导入”,打开“导入证书”对话框,在此对话框中选择相应的pfx格式的证书文件并输入其密码,点击“确定”按钮将pfx证书添加到IIS中。     

 

        

 

 

 

      3、右击需要支持https访问的网站名称 → 右键点击“编辑绑定” → 打开“网站绑定”对话框。

           

 

         

 

             默认端口443,也可以选其他端口。

                             

       参数设置如下:

       类型:选择https;

       端口:可以默认为443,也可以设置其它未被占用的端口;

      SSL证书:选择在第2个步骤中添加的pfx证书;

       以上设置完成后,点击“确定”按钮完成绑定。

       

 

       4、在网站的功能视图中的IIS项里,有一项是“SSL设置”,双击此项进入SSL设置页,如果勾选“要求SSL”,则访问此网站必须是https模式,反之,也可以使用http模式访问此网站。

 

               

 

      5、SSL访问

         

 6、外网通过域名直接访问

       

 

 注意:如果公网IP不能正常访问,则检查云服务器安全组,是否配置出入站规则的端口,如果IP能访问,但是域名无法访问,请检查域名解析在云服务器中的DNS是否异常。之前就是因为我更换了云服务器,导致主机变更,DNS解析错误。重新编辑为新的主机即可。

 

 7、修改后前端ajax还需要注意,因为接口从http升级为https后,ajax请求有变化,容易出现以下错误。

 

  解决办法有两种:

    一、在需要的html头部添加这个代码,自动升级http为https请求

           

 

           

<!--将http请求自动升级为https请求-->
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
View Code

二、

在我们服务器的响应头中加入:

header("Content-Security-Policy: upgrade-insecure-requests");

  

        

    

posted on 2020-08-11 17:09  木乃伊人  阅读(1559)  评论(0编辑  收藏  举报

导航