C# 环回连接在Windows Server 2008上不起作用

C# 环回连接在Windows Server 2008上不起作用,c#,asp.net-mvc,iis-7,windows-server-2008-r2,loopback,C#,Asp.net Mvc,Iis 7,Windows Server 2008 R2,Loopback,我正在将Windows Server 2008 R2与IIS 7一起使用。我的MVC应用程序在asp.net 4.5版本上运行良好。请注意,该应用程序在其他服务器和托管帐户上运行良好 然而,在一个新系统上。。。只有一个函数不工作,我试图通过http调用从应用程序运行另一个函数时出错 这在其他所有托管帐户(在不同的服务器上)/共享服务器和开发机器上也可以正常工作。不确定为什么在这个新的windows 2008服务器和IIS上它不工作 当应用程序尝试调用此URL时,我收到(404)Not Found

我正在将Windows Server 2008 R2与IIS 7一起使用。我的MVC应用程序在asp.net 4.5版本上运行良好。请注意,该应用程序在其他服务器和托管帐户上运行良好

然而,在一个新系统上。。。只有一个函数不工作,我试图通过http调用从应用程序运行另一个函数时出错

这在其他所有托管帐户(在不同的服务器上)/共享服务器和开发机器上也可以正常工作。不确定为什么在这个新的windows 2008服务器和IIS上它不工作

当应用程序尝试调用此URL时,我收到(404)Not Found错误

如果我手动调用该函数,它将运行。。但我需要在特定事件中通过在应用程序中进行http调用来调用此函数。这是一个从应用程序到同一应用程序的环回连接,但另一个函数使用参数在不同的url调用

有人能告诉我这里可能出了什么问题吗?为了在IIS/server中支持环回连接,我们需要解决什么问题

下面是使用的代码

HttpWebRequest objRequest = (HttpWebRequest)WebRequest.Create(url);
objRequest.Method = "GET";
objRequest.ContentType = "application/x-www-form-urlencoded";
objRequest.AllowAutoRedirect = true;

ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(AcceptAllCertifications);

等待您的快速响应。

问题在于服务器中的域映射。当尝试从外部网络打开域时,它会正确地为网站服务。但当我试图在同一台服务器上的浏览器上打开时,它没有提供请求

我将域名条目添加到windows主机文件中,并将其解析为127.0.0.1,然后它开始正常工作


谢谢大家帮助我解决这个问题。如果没有你的意见,我可能无法解决这个问题。这都是你的功劳,但由于没有答案,我创建了一个答案,以帮助其他面临同样问题的人。

请发布您用于发出此“环回”请求的代码。此外,必须向自身发出HTTP请求听起来像是一个糟糕的设计。为什么不能直接调用处理方法,或者使用ASP.NET运行时生成HTML供内部处理?如果是这种情况,请注意,您可以使用视图引擎来呈现数据,而不需要另一个HTTP上下文。最后,您可能会遇到一些问题,即Web主机阻止其托管的任何网站进行出站连接(甚至到它们自己),例如,这样做是为了将安全风险降至最低,并阻止他们的网站被用于发起DDOS攻击。@Dai在问题中添加了代码。请看一看并提出建议。问题是。。它适用于所有其他安装,而不适用于这台新的VPS服务器。IIS/Windows Server中是否有任何与配置相关的内容需要更改?在这不是404错误之前,我有401个与环回web请求有关的身份验证错误,但您可以尝试本文中提到的设置,看看是否有帮助。此外,如果设置了错误的url重写规则并进行了修复,我也会遇到404个错误,但即使在url重写规则得到纠正之后,我也必须清除浏览器缓存。