Windows IIS 10如何配置自签名SSL并实现自动跳转

简介: 本文记录了IIS配置自签名证书及HTTPS跳转的注意事项。包括解决443端口占用问题、URL Rewrite插件安装与配置、web.config修改方法,以及避免因旧教程导致的配置错误。

配置自签名难度不大,但是有一些坑路,所以在这里记录一下。

1. 配置自签名的坑路

配置自签名,这里就不进行详细说明了。网上有大量的链接:

  1. Microsoft
  2. 教程2
  3. Sophos

在配置好443端口的时候,服务器可能会无法再次启动,原因搜索了一下,说是443端口被占用。其实解决方法是直接重启即可。

2. HTTP跳转HTTPS

使用中文搜索,得到的是很多年前的教程,实际上都不适用于IIS 10。
正确的做法是下载插件。

2.1 下载并安装URL Rewrite插件

下载地址: https://www.iis.net/downloads/microsoft/url-rewrite
等待下载并安装好之后,需要退出一下IIS。因为这个时候IIS Manager里面URL Rewrite还没显示出来。
我们需要设置Web Config去修改。

2.2 设置Web Config

在你网站的根目录,有一个web.config的文件,把代码嵌入:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Redirect to HTTPS" enabled="false" stopProcessing="true">
<match url="(.*)" />
<conditions><add input="{HTTPS}" pattern="^OFF$" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

由于我本来里面已经有配置,所以修改了一下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <staticContent>
            <mimeMap fileExtension=".pkg" mimeType="application/macos" />
            <mimeMap fileExtension=".ipa" mimeType="application/ipad" />
        </staticContent>
        <directoryBrowse enabled="true" />
        <rewrite>
            <rules>
                <rule name="Redirect to HTTPS" enabled="true" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTPS}" pattern="^OFF$" />
                    </conditions>
                    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

如你所见,我之前通过MIME Types添加了pkg和ipa文件,这样用户访问就会直接下载,而不会是报错。
现在我又添加了HTTPS自动跳转。

2.3 IIS Manager查看效果

URL Rewrite
现在,你只需要进入URL Rewrite并点击“Redirect to HTTPS”然后Enable Rule即可。

2.4 注意IIS早期版本教程导致坑路

记得在SSL Setting里面,不要勾选Require SSL!
否则会返回403.4错误。
SSL Setting - Not Require

参考文献

参考文献1. Namecheap

参考文献2. Grid Scale

相关文章
|
6月前
|
网络安全 数据库
YashanDB HA节点间SSL连接配置
本指南介绍HA内部节点链路的SSL连接配置,包括客户端监听与HA节点自身监听两种方式。需使用OpenSSL工具生成证书,具体步骤参考数据库服务端SSL连接配置文档。此外,还需在数据库中开启HA的SSL连接开关并设置证书路径(仅支持绝对路径,长度≤254字节),最后重启数据库以完成配置。确保服务器已安装所需工具,详细操作请查阅相关文档。
YashanDB HA节点间SSL连接配置
|
6月前
|
安全 网络安全 数据库
YashanDB分布式节点间SSL连接配置
本文介绍YashanDB分布式节点间SSL连接配置方法,确保通信安全。需统一为整个集群配置SSL,使用相同根证书签名的服务器证书,否则可能导致连接失败或数据库无法启动。文章详细说明了使用OpenSSL生成根证书、服务器私钥、证书及DH文件的步骤,并指导如何将证书分发至各节点。最后,通过配置数据库参数(如`din_ssl_enable`)并重启集群完成设置。注意,证书过期需重新生成以保障安全性。
|
6月前
|
安全 Linux 网络安全
YashanDB数据库服务端SSL连接配置
YashanDB支持通过SSL连接确保数据传输安全,需在服务端生成根证书、服务器证书及DH文件,并将根证书提供给客户端以完成身份验证。服务端配置包括使用OpenSSL工具生成证书、设置SSL参数并重启数据库;客户端则需下载根证书并正确配置环境变量与`yasc_env.ini`文件。注意:启用SSL后,所有客户端必须持有根证书才能连接,且SSL与密码认证独立运行。
|
4月前
|
安全 应用服务中间件 网络安全
Nginx SSL/TLS协议栈中配置深度解析与实践指南-优雅草卓伊凡
Nginx SSL/TLS协议栈中配置深度解析与实践指南-优雅草卓伊凡
263 0
Nginx SSL/TLS协议栈中配置深度解析与实践指南-优雅草卓伊凡
|
6月前
|
存储 Oracle 关系型数据库
MySQL 8.4 配置SSL组复制(八个步骤)
MySQL 8.4 配置SSL组复制(八个步骤)
340 0
|
16天前
|
运维 安全 网络安全
Windows Server 2019拨号“找不到设备”?Error 1058解决指南
Windows Server 2019拨号报错1058?别急!这不是硬件故障,而是关键服务被禁用。通过“服务依存关系”排查,依次启动“安全套接字隧道协议”“远程接入连接管理”和“路由与远程访问”服务,仅需4步即可恢复PPPoE或VPN拨号功能,轻松解决网络中断问题。
96 1
|
16天前
|
存储 SQL 人工智能
Windows Server 2025 中文版、英文版下载 (2025 年 9 月更新)
Windows Server 2025 中文版、英文版下载 (2025 年 9 月更新)
498 3
Windows Server 2025 中文版、英文版下载 (2025 年 9 月更新)
|
19天前
|
安全 Unix 物联网
Windows 7 & Windows Server 2008 R2 简体中文版下载 (2025 年 9 月更新)
Windows 7 & Windows Server 2008 R2 简体中文版下载 (2025 年 9 月更新)
170 2
|
13天前
|
安全 Linux iOS开发
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具
86 0
SonarQube Server 2025 Release 5 (macOS, Linux, Windows) - 代码质量、安全与静态分析工具