gpt4 book ai didi

ssl - IIS 7.5 多个子域相同的通配符证书

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:54 27 4
gpt4 key购买 nike

这是一个奇怪的问题,因为我想要做的就是扩展一个已经按照描述的方式正常运行的配置,方法是添加一个新网站,它只是一个现有 Web 应用程序的副本。

所以我们有一个通配符证书 *.business.com

我们已经有 8 个其他站点绑定(bind)到同一个 SSL 证书,每个站点都有自己的主机名。

  • a.business.com
  • b.business.com
  • ..
  • h.business.com

所有现有站点的角色/应用程序/结构都大不相同,因此从这个意义上讲,没有任何重复的文件或应用程序。

我正在尝试添加 x.business.com,但出于某种原因 IIS 不想知道它。我将解释我所做的事情,希望有人能看到我的方法的错误。

我的第一步是在域名的 DNS 中设置 A 记录。

所以上面列出的所有其他 URL 都指向同一个公共(public) IP 地址。

我们称它为 100.10.10.100

然后我在 IIS 中创建了一个简单的网站,其中包含一个简单的 default.htm 用于测试。

将主机名设置为 x.business.com 并绑定(bind) SSL 证书(使用 appcmd)后,我测试了站点地址。没有什么。我的意思是说该站点无法访问的一般错误。此时没有日志,因为站点没有提供任何服务。

URL 的 ping 返回 DNS 中设置的 IP 地址,但没有响应。

为了尝试简化,我添加了另一个名为 TestSite 的简单站点。我在主机文件 127.0.0.1 TestSite 中创建了一个条目。尝试了 IIS 服务器浏览器,这也没有用。

然而,当我将 TestSite 更改为使用端口 81 然后进行测试时 http://testsite:81我得到了积极的回应。

然后我尝试扩展这个测试并制作了另一个 A 记录 testsite.business.com。将主机名添加到现有测试站点,然后尝试 http://testsite.business.com:81它失败了。

回滚一切,它再次工作。

在我的生活中,我看不出我需要做什么才能让它正常工作。这似乎是一个 DNS 问题,但其他 8 个站点都使用相同的 IP 地址工作正常:端口(例如 100.10.10.100:80),多个站点毫无问题地绑定(bind)到相同的 SSL 证书并且已经工作了将近两年。

我想补充一点,我没有设置它,因此在黑暗中摸索,但我确信我过去做过类似的事情没有问题。

我已经搜索了几个小时,但没有发现任何明显遗漏的内容。当我看到很少有类似问题的帖子时,我也很担心,这让我觉得我错过了一些真正基本的东西。

感谢您对诊断此问题的想法。

最佳答案

好的,大家可以放松一下。

两个问题是 DNS A 记录中的拼写错误。是的,由我负责。

不过,我还在默认网站中发现了一段有趣的代码。

Default.asp 具有以下代码。看起来这是在对传入的 Web 请求和重定向进行一些翻译。

	// Redirect appropriately
response.buffer = True
response.clear
response.status = "301 Moved"
If InStr(sServerName,"a") > 0 Then
response.addHeader "Location", "https://a.business.com/" & Request.QueryString
Elseif InStr(sServerName,"b") > 0 Then
response.addHeader "Location", "https://b.business.com/" & Request.QueryString
End If

所以我加了

	// Redirect appropriately
response.buffer = True
response.clear
response.status = "301 Moved"
If InStr(sServerName,"a") > 0 Then
response.addHeader "Location", "https://a.business.com/" & Request.QueryString
Elseif InStr(sServerName,"b") > 0 Then
response.addHeader "Location", "https://b.business.com/" & Request.QueryString
Elseif InStr(sServerName,"x") > 0 Then
response.addHeader "Location", "https://x.business.com/" & Request.QueryString
End If

关于ssl - IIS 7.5 多个子域相同的通配符证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50962919/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com