2013-01-08 66 views
0

我试图(和失败)设置反向代理。作为反向代理管理融合

我曾尝试:

2013-01-08T13:49:41 * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** * ** *
2013-01-08T13:49:41 [重写]输入:http://swisscom-live.emusetech.com:81/ping/somecall.svc
2013-01-08T13:49:41 [规则0]输入:/ ping/somecall。SVC
2013-01-08T13:49:41 [规则0]规则模式匹配
2013-01-08T13:49:41 [规则0]输出:http://my.proxy.com/somecall.svc
2013-01-08T13:49:41 [重写]代理:http://my.proxy.com/somecall.svc
2013-01-08T13:49:41 * ** * ** * ** * ** * ** * ** * * * * ** * ** * ** * ** * ** * ** * ** * ** *

然而,实际的网络浏览器显示“本地”计算机出现404错误。日志说它做的是正确的事情,但我不明白为什么它实际上并没有这样做!


指针赞赏! (在Managed Fusion或其他任何项目上)。


更新:我终于设法得到特定的Microsoft-方式工作。这个技巧(我错过了)是我需要创建一个单独的空Web应用程序,并且只在这个新应用程序上创建反向代理。

我怀疑其他应用程序,我试图增加这个有一些重载的配置,从而停止URL重写工作(但仍允许重定向)。

在托管融合对此有何评论仍然对,虽然!!!

+1

嗨,我面临着同样的问题。你能否给我提供决议的步骤。 – Karthick

回答

0

当我将上述解决方案移至生产机器时,无法为包含.svc的URL工作。原来,[这个答案] [5]到另一个问题有解决方案。

这最终将这个反向代理的web.config文件:

<system.web> 
<compilation targetFramework="4.0"> 
    <buildProviders> 
    <remove extension=".svc" />    
    </buildProviders> 
</compilation> 
</system.web> 

使服务调用远程服务器实际上做,而不是在本地的解释。

而且这也有解决了Managed Fusion的问题的结果! :-)

1

使用托管融合作为代理时有同样的问题(404)。

显然有一个处理程序注册,除了没有自动添加nuget软件包安装模块。

网络。配置:

<system.webServer> 
    <validation validateIntegratedModeConfiguration="false" /> 
    <modules runAllManagedModulesForAllRequests="true"> 
     <add name="RewriterModule" type="ManagedFusion.Rewriter.RewriterModule, ManagedFusion.Rewriter" preCondition="" /> 
    </modules> 
    <handlers> 
     <add name="RewriterProxyHandler" preCondition="integratedMode" verb="*" path="RewriterProxy.axd" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </handlers> 
</system.webServer>