2011-06-13 92 views
0

我对这个问题令人难以置信的简单化本质表示歉意,但我没有运气看别处。我试图完成的是只显示一个div如果ASP.net不正确处理页面;与用于JavaScript的<noscript>类似。一个可以接受的选择是创建div并使用ASP来隐藏它。如何在.net不工作的情况下仅显示元素?

据我了解:
- 客户端点击IIS
- IIS发现
页面 - ASP它必须处理
页面发现任何东西 - 为送达回客户端。

如果IIS无法执行ASP代码的处理(该模块被禁止,权限,任何...),我希望这个启动。
- 客户端请求文档 - IIS运行ASP代码,页面显示“ASP WORKS !!!” - 或ASP没有,它说“ASP坏了”

我知道这是模糊的,但我正在寻找这样简单的事情。 IIS可以处理ASP代码或它不能。


编辑:
或许它会帮助,如果我解释什么,我试图完成一个更高的水平。我做了很多Exchange故障排除。我非常了解JavaScript,但我从来没有碰过ASP(因此在这个问题上完全缺乏结构)。偶尔,依赖于IIS的Exchange将因.NET中的许多问题而停止工作。 IIS正在工作,因此该网站仍然可用,但只有一些嵌齿轮没有转动。我的目标是找到一个快速确定ASP页面是否可以“运行”的方法。

到目前为止,我有一个基本的HTML文件,其中包含一个用ASP编写的时间函数;所以它要么工作,要么没有。我想要一些更专业的东西。

+1

你如何定义“不工作”?如果它完全不起作用,它将无法首先生成该页面。 – CodesInChaos 2011-06-13 20:38:20

+2

你是什么意思'ASP.Net不工作'? – Jay 2011-06-13 20:38:41

+1

如果ASP.Net工作不正常,你是什么意思?如果ASP.net工作不正常...您的网站将无法正常工作.... – womp 2011-06-13 20:38:58

回答

1

这是有点一个开放的问题 - 我明白你为什么问这个虽然。

让我们每个类型的故障,并谈论它

严重的记忆问题 - 未定响应。你希望得到一个异常 - OutOfMemory异常,但这取决于它发生的地方和严重程度。

.NET配置打破了 - 你的页面可能不会返回所有

IIS配置错误 - 不允许脚本 - 你会在你的程序(开发商故障)得到了404反正

例外 - 你可以得到一个YSOD(死亡黄色屏幕提供错误细节) - 在这里您可以通过自定义错误页面进行控制。你也可以安装ELMAH给你一个机制来记录和查看这些(并获得警报等)

编译您的网站或您的网站配置的异常(说 - 在你的web.config中) - 你确实可能不会得到一个你可以控制的YSOD。您也可以在IIS中设置自定义错误页面以处理500错误。

所以 - 有各种各样的场景,但你只能处理'最好的' - 一般的场景是有你自己的自定义错误处理程序来处理程序问题。其他“严重”的问题更难以处理,通常不应该发生。

+0

非常感谢亚当!很难问一个关于你认识的问题的问题。也许我会通过Apache/PHP开始运行Exchange ;-) – Gary 2011-06-13 21:02:53

+0

哈哈:)我知道你的感受 - 你希望你旁边有人能够回避这些问题,并通过学习新技术来加快速度。谢天谢地stackoverflow – 2011-06-13 21:11:06

2

在IIS中,您可以将HTTP 500状态码设置为自定义页面(即.html页面)。这应该覆盖大部分 ASP.NET错误。除了服务另一个页面之外,您无法做其他事情。

+1

听起来像OP想要的。这里的一个重点是显示没有重定向的错误页面并使用正确的http状态码。许多网站得到这些错误之一。 – CodesInChaos 2011-06-13 20:42:24

+0

呃我知道了!当我看到Firebug发生这种情况时,它总是困扰我:x – wsanville 2011-06-13 20:48:14

0

javascript是客户端有偏见的代码,这意味着它可以被不支持或脚本关闭的浏览器处理。 ASP是服务器端平台,不应该部署到不支持它的服务器,并且如果它通常不能被Web服务器使用。所以在那里没有对应的成语

+0

我明白,我意识到ASP是服务器端脚本,正是我想要展示的:服务器端问题。 – Gary 2011-06-13 20:47:10

2

即使我不明白你的问题的'不工作'的一部分,这里是我的一个可能的解决方案。

使用的*。html的网页,以确保它被交付即使asp.net出于某种原因不能正常工作(因此无法处理的* .aspx页面中)

从HTML页面发送内对aspx资源的ajax请求,如果无法处理,该资源应该返回错误。

如果ajax调用成功,asp.net似乎正在工作。

希望这有助于

+0

感谢丹尼斯,“无法处理* .asp(x)页面”是一种更好的措辞。 – Gary 2011-06-13 20:52:57

相关问题