任何想法?

有帮助吗?

解决方案

您需要 Tomcat和为Tomcat 中的IIS连接器。

其他提示

使用 IIS 7.5,您可以使用应用程序请求路由将请求路由到 teamcity.server.domain.com:80 到 Tomcat 在 server.domain.com:81. 。我认为这种方法更优越,因为 Tomcat 连接器在 WS2008 x64 下似乎有点不稳定。

Jon Alb 有一篇关于如何在 WS2008 上配置 TeamCity 加 IIS 的精彩文章:

此外,您需要确保您的 DNS 可以解析 teamcity.server.domain.comserver.domain.com. 。我的 IIS 服务器需要一个 ipconfig /registerdns 正确更新其 DNS 条目。在这种情况下,正确意味着创建一个 领域 在domain.com 查找区域中的条目 server, ,简单的 A-Record 是不够的。在该域中,您需要为 * 创建 CNAME 记录,因此任何子域都将被重定向到 server.domain.com

我遇到的一个大问题是 IIS 7.5 似乎不再正确地编写 applicationHost.config 文件,因此端口号最终不会被保留。这将导致令人讨厌的 400.0 Bad Request 错误,因为将达到 MAX_FORWARDS 限制(请求以圆圈为根)。

要解决此问题,请将以下内容添加到 C:\Windows\System32\inetsrv\config:

<webFarms>
  <webFarm name="teamcity" enabled="true" adminUserName="" adminPassword="[enc:AesProvider:2blZ7roifGTktpn8zBBuVQ==:enc]" primaryServer="">
    <server address="localhost" enabled="true">
      <applicationRequestRouting httpPort="YOURPORTHERE!!!" />
    </server>
    <applicationRequestRouting>
      <loadBalancing algorithm="WeightedRoundRobin" />
      <protocol reverseRewriteHostInResponseHeaders="true" />
    </applicationRequestRouting>
  </webFarm>
</webFarms>

编辑 如果您正在运行其他站点并收到 404,除了遵循第 2 部分之外,您还需要创建一个虚拟站点来捕获主机名,如下面的 Ian Patrick Hughes 答案所述。

要添加到约翰内斯·鲁道夫的答案......乔恩白蛋白文章是最适合在IIS 7.5暴露团队市一个简单的故障。提的唯一的事情是,如果你正在运行在该服务器实例的其他网站,你跟着他通过的第二部分,则可能需要创建一个虚拟的网站寻找一个子域主机头值,因为这似乎是IIS从未执行过我的农场重写URL如果没有站点匹配。然而,这也应该让你使用HTTP验证,如果你想保护你的团队市登录页面上的端口80。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top