同一个服务器一个IP部署多个带SSL证书的域名,访问时不需要输入端口的方法

郑鹏飞4年前爱T767

同一台服务器,一个IP地址,多个域名,可以部署在同一台服务器上,并且是可以部署多张SSL证书的,只是SSL证书会认端口,所以,443端口就只能部署一张SSL证书,其它的域名怎么办呢?

好办,就是要部署在不同的端口,比如8080端口。

比如我部署的,在一台服务器中部署了 https://vxmat.cn ,以及 https://blog.forbs.cn:8080 ,这两个域名都可以正常带SSL证书访问,没有问题。

可是,我不想在访问 blog时还得要输入端口,怎么办?

同样的,也是IIS 的URL重写功能。只需要同时也部署 blog.forbs.cn的80端口,先实现通过 http://blog.forbs.cn 的访问,或者不需要输入 http,直接浏览器中输入 blog.forbs.cn 也可以访问,然后再请咱们的 URL重写大神,只要写一条规则,要求所有通过 http://blog.forbs.cn 访问的请求,强制重定向到 https://blog.forbs.cn:8080 就可以了。

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

至少,通过这么一种设置,就可以避免用户在访问时还得要繁琐的输入 https://...和端口号, 

唯一不完美的地方,就是如果你的内容链接需要被分享的时候,它被分享的地址就是 https://blog.forbs.cn/...... ,而不是 http://blog.forbs.cn  ,有点可惜,但在本人的知识范围内,好像也不是很有办法了,至少还没想到怎么办。

-------------------

文章写成后,觉得不太甘心,然后又各种搜了一下,结果发现我确实是弄错了。原来IIS上也是可以支持多域名同一个端口绑定不同的SSL证书的,只是勾选上“需要服务器名称指示”的选项即可。

image.png


我是郑鹏飞。 如果您觉得我的文章对您有帮助,可以点击站点上的 关于站点/支持和帮助
转载请注明 : 文章转载自不了阁-飞哥 blog.forbs.cn
本站文章除注明转载/出处外,均为本站原创或翻译。转载务必注明出处,尊重他人劳动成果共创和谐网络环境。

相关文章

C#、VB.Net RichTextBox变更文件文本内容的方法,并且通过重写实现不闪屏的效果

C#、VB.Net RichTextBox变更文件文本内容的方法,并且通过重写实现不闪屏的效果

C#、VB.Net RichTextBox变更文件文本内容的方法。使用RichTextBox控件时,免不了需要变更文件中的内容。本文采用的办法是使用 SelectionStart、SelectionL...

wsl中每个linux的根目录位置,直接从Windows里访问,直接拷贝文件

wsl中每个linux的根目录位置,直接从Windows里访问,直接拷贝文件

wsl的主系统目录在\\wsl.localhost\,或者是打开我的电脑,向上到桌面,就可以看到。直接在桌面上好像看不到Linux这个系统目录。打开成功后,可以看到每一个已安装的linux子系统的名字...

在vb.net、c#等.net程序中把程序集dll打包到exe执行文件的方法

在vb.net、c#等.net程序中把程序集dll打包到exe执行文件的方法

能够达到的效果,就是我程序生成后,就仅仅是一个Vxterm.exe可执行文件,把它拷出来就可以直接使用了,不需要安装,也不需要把附带的dll也要求带着。以下是我在参考了网上的各种乱抄的代码后,自己整理...

可能这就是C#比不上别的语言流行的其中的一个原因:.net的各种版本不兼容,高版本竟然也不向低版本兼容!这太扯蛋了!

可能这就是C#比不上别的语言流行的其中的一个原因:.net的各种版本不兼容,高版本竟然也不向低版本兼容!这太扯蛋了!

我的VxTerm更新到2.4的时候,手贱,就把.net降到了3.5,想着会不会可以在Win7、Win10默认情况下可以直接运行。结果它娘的,竟然是不行的!虽然,可以通过在程序目录下建立VxTerm.e...

检查 RichTextBox ScrollBar thumb 是否在滚动条的底部

检查 RichTextBox ScrollBar thumb 是否在滚动条的底部

Imports System.Runtime.InteropServices Public Class jMyBox    &nbs...

C#、VB.net下使用无符号整数的方法

C#、VB.net下使用无符号整数的方法

C#public const uint ObjidVscroll = 0xFFFFFFFB;VB.netPublic Const OjbidVscroll As UInt32 = &HFFFF...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。