如何在同一台服务器上运行 IIS 的端口 443 上运行 VisualSVN 服务器?

Met*_*urf 7 iis https netsh visualsvn-server

服务器 2008 R2 SP1
VisualSVN 服务器 2.1.6

IIS 服务器有大约 10 个站点。其中之一在端口 443 上使用 https 并具有以下绑定:

http x.x.x.39:80 site.com
http x.x.x.39:80 www.site.com
https x.x.x.39:443
Run Code Online (Sandbox Code Playgroud)

VisualSVN 服务器属性

server name: svn.SomeSite.com
server port: 443
Server Binding: x.x.x.40
Run Code Online (Sandbox Code Playgroud)

IIS 上没有站点正在侦听 xxx40。

启动 VisualSVN 服务器时,抛出以下错误:

  • make_sock: 无法绑定到地址 xxx40:443 (OS 10013) 尝试以访问权限禁止的方式访问套接字。
  • 没有可用的侦听套接字,正在关闭

当我在 IIS 上停止 Site.com 时,VisualSVN Server 可以正常启动。当我将 VisualSVN 服务器绑定到端口 8443 并启动 Site.com 时,VisualSVN 服务器启动没有问题。

我的目标是能够使用普通 url 访问 VisualSvn 服务器,即不使用地址中的端口号的 URL:

https://svn.site.com vs https://svn.site.com:8443
Run Code Online (Sandbox Code Playgroud)

需要配置什么才能让 VisualSVN Server 在 443 端口上运行,而 IIS 运行在同一台服务器上?

编辑/回答

伊万提供答案确实为我指明了正确的方向。对于遇到此问题的其他人,这里有更多信息。

即使我的 IIS 没有绑定到我用于 VisualSvn 的 IP 地址,IIS 仍然会劫持 IP 地址,除非 IIS 被明确告知要侦听哪些 IP 地址。

Win Server 2k8中没有GUI配置IIS监听的IP地址;默认情况下,IIS 侦听分配给服务器的所有 IP 地址。

以下将有助于将 IIS 配置为仅侦听您想要的 IP 地址:

  1. 打开命令提示符
  2. 进入: netsh
  3. 进入: http
  4. 输入:show iplisten--> 这将显示 IIS 正在侦听的 IP 地址表。默认情况下,该表将为空(我猜这意味着 IIS 侦听所有 IP)
  5. 对于 IIS 应该侦听的每个 IP 地址,请输入: add iplisten ipaddress=x.x.x.x
  6. 输入:show iplisten--> 您现在应该看到添加到监听表中的所有 IP 地址。
  7. 退出然后重置 IIS。

这些命令中的每一个也可以直接运行,即, netsh http show iplisten

如果您需要从监听表中删除一个 IP 地址:

  1. 打开命令提示符
  2. 进入: netsh
  3. 进入: http
  4. 进入: delete iplisten ipaddress=x.x.x.x
  5. 退出然后重置 IIS。

Iva*_*kov 4

那里已经回答了。使用以下命令:

netsh http add iplisten ipaddress=x.x.x.39
Run Code Online (Sandbox Code Playgroud)