2010-10-12 58 views

回答

-1

而不是乱搞IP,您可以使自定义错误仅在本地调试时显示。 Check here,请看模式属性。

+1

问题是我没有在本地进行调试 – 2010-10-12 10:09:45

+0

因此您正在调试服务器上的代码?并重新加载活网站,让他们检查您的更改? – 2010-10-12 10:17:19

+0

@ m.edmondson我对此感到震惊/惊讶吗?如果OP发现无法解释,他的在服务器上的行为与其本地服务器上的行为不同,那么为特定IP地址关闭自定义错误无效吗?认真 - 我没有去。我很想知道有什么替代方法。谢谢。 – 2012-07-23 17:15:58

0

坦率地说,我不知道任何内置的东西。但是如果我要解决这个问题,我会为Application_Error事件添加一个HttpModule和连接事件处理程序,并在该处理程序中尝试查找谁是客户端以及如何处理它。

+0

因此,您会将IP地址与子网掩码进行比较,以确定请求是否源自网络? – 2010-10-12 08:31:03

+0

@ eddy556 - 不,我没有想过那么复杂。像Request.UserHostAddress这样简单的东西会让我成为主机,然后我们也必须记住,他非常清楚哪个服务器他想阻止地址,所以我们可以检查地址是否与本地相同,然后不要引发错误。如果这不合适,请纠正我..我也会学习.. – 2010-10-13 06:40:09

0

尽管这是一个相当古老的问题,但我刚刚解决了这个问题,并在我的环境中进行了搜索。

有没有明显的方法,但是我发现this alternative

您必须安装 应用webconfig>的System.Web>的customErrors>模式为仅限远程

女巫意味着你刚刚看到的错误LOCALMACHINE。

从远程位置利用RemoteOnly有3个步骤。

  1. 仅限远程设置的customErrors
  2. 有服务器管理员批准服务器变量REMOTE_ADDR
  3. 创建URL重写规则

详见整个帖子。

最后,您需要创建一条规则来告诉您正在访问的内容,并将REMOTE_ADDR更改为127.0.0.1,以使您看起来是本地的。

有多种方法可以判断它是否是你。一个是通过IP地址。这在大多数情况下可能是最简单的,但要小心如果您拥有动态IP,它可能会随时间而改变,并将您的详细错误暴露给其他人。

所有这些都是Scott Forsyth后,我发现,并复制了一些部分。