抛出异常时,我们会记录它。但是,我们无法检索服务器名称或I.P地址。不确定这是否是检索它的正确方法。
Log.ServerName = HttpContext.Current.Request.ServerVariables["LOCAL_ADDR"];
Log.ServerIP = HttpContext.Current.Request.ServerVariables["SERVER_NAME"];
这似乎不起作用。它返回'localhost'和:: 1作为I.P地址。
答案 0 :(得分:3)
根据您的评论,您似乎想要记录本地服务器名称和IP地址。一种解决方案是使用Dns.GetHostName和Dns.GetHostAddresses。
答案 1 :(得分:0)
如果你从IDE中的本地服务器测试它,它似乎就像它应该工作一样。
答案 2 :(得分:0)
您是否在运行Web服务器的同一台计算机上测试了该应用程序?如果是这样,则IPV6环回地址和localhost是变量的预期结果。如果您从另一台计算机发送请求,则值应该是您所期望的。
或者,HTTPRequest.Url属性将包含主机的客户端标识,如果您预计主机应用程序有多个别名,则该属性可能更有用。