iis-7 - 由 IIS 7 代理的 RhodeCode

标签 iis-7

我在 Windows 2008R2(64 位)机器上安装了 RhodeCode 1.2.2。

我已将 IIS 7 设置为在 127.0.0.1:5000 运行的 RhodeCode 的代理服务器(应用程序请求路由 + URL 重写)。

可通过“https://subdomain.domain.de”访问存储库。

在存储库摘要中,克隆 URL 指向: https://[用户名]@127.0.0.1:5000/SomeProject

在客户端,我可以在替换时克隆存储库 “127.0.0.1:5000”与“subdomain.domain.de”。

当然我希望 RhodeCode 显示代理 url (“subdomain.domain.de”)而不是 127.XXX...

我在网上上下搜索,唯一发现的是 Apache 有一个“ProxyPreserveHost On”设置,可以解决这个问题。然而 我没有找到 IIS 的类似内容。

“生产.ini”中是否有某个设置可以让我 定义代理网址? 或者有人发现了 IIS 中隐藏的设置吗?

非常感谢任何帮助:-)


感谢您的回答!我已经使用了 ARR 并设置了反向代理,我可以通过代理访问 RhodeCode。但是,HTTP_HOST 值似乎没有转发到 Paster。

在 IIS 中,我设置了以下服务器变量并在反向代理规则中设置它们:

<set name="HTTP_HOST" value="[subdomain.domain.de]" />
<set name="HTTP_X_FORWARDED_SERVER" value="[subdomain.domain.de]" />
<set name="HTTP_X_ORIGINAL_HOST" value="[subdomain.domain.de]" />
<set name="HTTP_X_HTTP_HOST" value="[subdomain.domain.de]" />
<set name="HTTP_X_URL_SCHEME" value="https" />

但这根本没有影响。

在之前链接的答案中,他建议将这些变量值复制回HTTP_HOST(在tomcat内,在我的情况下应该是粘贴的)。与 apache 中简单的“ProxyPreserveHost On”相比,这对我来说有点过分了。我感觉我错过了一些东西。

干杯, 索恩特

最佳答案

Itvan 是正确的,这会起作用。

取消注释clone_uri 将保留默认的clone_uri。您可以通过以下行强制 clone_uri 使用您的域:

clone_uri = {scheme}://{user}{pass}[subdomain.domain.de]{path}

PS:适用于 1.3.6 版本

关于iis-7 - 由 IIS 7 代理的 RhodeCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7863091/

相关文章:

asp.net - 启动 asp.net 站点调试时,Visual Studio 2010 挂起

iis-7 - Windows 身份验证在 IIS 7.5 中失败

asp.net - ASP.NET 缓存的位置

iis-7 - Visual Studio 2012 Web 部署到带有 IIS 7 和/msdeploy.axd 404 错误的 Windows Server 2008 R2

asp.net - 本地 SQL Anywhere 数据库的 session 隔离问题

c# - 动态添加具有指向动态生成的自签名证书的 HTTPS 绑定(bind)的网站

php - 如何在我自己的 PHP 应用程序中创建类似于 Wordpress 的 URL 重写

在 IIS 中部署后 CSS 不工作

iis - 导致 NServiceBus 丢失消息的原因

iis - IIS7 中的 GZip 压缩不起作用,但内容编码 header 设置为 gzip