如何编写我的Web应用程序以便它知道它所在的Web服务器?

时间:2014-05-19 04:51:35

标签: asp.net load-balancing web-farm

我的公司有一个ASP.NET Web应用程序,它运行在由Enterprise Foundry ServerIron XL 8硬件负载平衡的Web场上。出于调试目的,我们有一个页面只报告它正在运行的服务器。目前,我们手动将此页面的不同版本复制到每个服务器,并硬编码该服务器的名称(例如www1,www2或www3)。我想要的是找到一种让应用程序自行确定此信息的方法,因此我们不必在代码本身之外执行此手动步骤,但我无法找到任何方法来实现这一目标。

所以问题是:如何让ASP.NET应用程序了解它实际运行的位置?

1 个答案:

答案 0 :(得分:1)

您可以通过IIS本身执行此操作。

查找Web应用程序。在应用的主配置页面(功能视图)中,在IIS部分下您可以找到HTTP Response Headers。此功能使您可以添加/删除需要与该应用程序的每个响应一起发送的标头。

enter image description here

但是,您需要像fiddler这样的工具才能检查这些数据。

另一个选项是自定义服务器控件或用户控件,放置在页面中的任何位置,将在渲染阶段(作为html注释)输出该信息。您可以使用System.Environment类。

var mc_name = System.Environment.MachineName;