网站HTTP升级HTTPS完全配置手册(2)

启动控制台程序,选择菜单“文件"中的"添加/删除管理单元”-> “添加”,从“可用的独立管理单元”列表中选择“证书”-> 选择“计算机帐户“

在控制台的左侧显示证书树形列表,选择“个人”->“证书”,右键单击,选择“所有任务"-〉"导入”, 根据"证书导入向导”的提示,导入PFX文件(此过程当中有一步非常重要: “根据证书内容自动选择存储区”)

网站HTTP升级HTTPS完全配置手册

网站HTTP升级HTTPS完全配置手册

网站HTTP升级HTTPS完全配置手册

刷新后即可看到证书。

为站点分配证书,打开IIS -〉目录安全性 -〉服务器证书 -〉分配现有证书 -〉指定访问端口为443

网站HTTP升级HTTPS完全配置手册

重启站点

IIS 7/8

导入证书(和IIS 6步骤相同)

为站点分配证书,选择“绑定”->“添加”->“类型选择 https” ->“端口 443” ->“ssl 证书(选择导入的证书名称)” ->“确定”

网站HTTP升级HTTPS完全配置手册

如遇到主机名不能设置,请打开C:\Windows\system32\inetsrv\config\applicationHost.config 手动修改

重启站点

之后通过https://hostname 访问,并能够成功加载证书时,就已经算成功在服务器上安装证书了。

网站HTTP升级HTTPS完全配置手册

设置跳转

经过上面的步骤,相信各位的网站应该都能以https://domainhost的形式访问了,但细心的小伙伴可能已经发现,网站这个时候http和https同时都能够访问。这就需要设置跳转了,使http请求通过301 redirect到https上去。同样的,我们以不同Web服务类型来说明。

Nginx

server {
 
        listen 80;
 
        server_name 您的域名;
 
        return 301 https://$server_name$request_uri;
 
}

Apache

新建.htaccess
 
RewriteEngine On
 
RewriteCond %{SERVER_PORT} 80
 
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R,L] 

Tomcat

在conf/web.xml中的</web-app>前加入
 
<login-config>
 
      <!-- Authorization setting for SSL -->
 
      <auth-method>CLIENT-CERT</auth-method>
 
      <realm-name>Client Cert Users-only Area</realm-name>
 
</login-config>
 
<security-constraint>
 
      <!-- Authorization setting for SSL -->
 
      <web-resource-collection >
 
              <web-resource-name >SSL</web-resource-name>
 
              <url-pattern>/*</url-pattern>
 
      </web-resource-collection>
 
      <user-data-constraint>
 
              <transport-guarantee>CONFIDENTIAL</transport-guarantee>
 
      </user-data-constraint>
 
</security-constraint>

IIS 6
打开IIS -〉站点属性 -〉主目录 -〉选择“重定向到URL” -〉填写https://your-hostname/$S$Q” -〉勾选“资源的永久重定向”  

网站HTTP升级HTTPS完全配置手册

IIS 7/8

安装Url Rewrite 扩展组件 https://www.iis.net/downloads/microsoft/url-rewrite

反选“要求SSL"

网站HTTP升级HTTPS完全配置手册

站点的web.config内的<system.webServer>节中添加

<rewrite>
    <rules>
      <rule stopProcessing="true">
        <match url="(.*)" />
        <conditions>
          <add input="{HTTPS}" pattern="off" ignoreCase="true" />
        </conditions>
        <action type="Redirect" redirectType="Found" url="https://{HTTP_HOST}/{R:1}" />
      </rule>
    </rules>
  </rewrite>

总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/759d7dd1657be94773afe148ea2b4679.html