在IIS10自定义错误页面中,ASP Classic Server.GetLastError()方法返回空。

问题描述 投票:0回答:1

我在Windows 2019服务器上设置了一个500-100.asp状态码自定义错误页面,使用的是IIS v10,在页面中,我实例化了Server.GetLastError()方法。 返回的值都是NULL,0,-1,或者只是空值,如下面的输出。

ASPCode: 
Number: 0
Source: 
Category: 
File: 
Line: 0
Column: -1
Description: 

Server.GetLastError()应该还是支持的,事实上,如果使用 "编辑功能设置... "菜单项指定与最初设置相同的相对文件路径,并将 "自定义错误页面 "改为 "详细错误",那么该方法就会工作。 但是,那么其他已经定义的自定义错误页面,都会执行两次。

请注意,我找到了一个类似的问题来解决这个问题(在Stackoverflow上),标题如下:"关闭IIS8自定义错误页面"。"为经典ASP关闭IIS8自定义错误 - IIS中的潜在错误?" 不过,这是针对IIS 8.0的,写接受答案的人说,他不记得具体如何解决这个问题。

asp-classic iis-10 custom-error-pages
1个回答
0
投票

这个问题已经解决了。 原来我需要做的是简单地使用IIS-10中错误页面区域的 "添加 "操作,并创建一个新条目,使用500.100作为状态码类型。 这样就完美地工作了。 现在,Server.GetLastError()方法按照它应该的方式返回值,其他客户错误页面都没有执行两次(详见stackoverflow.comq61627238692942问题)。 这不是一个容易解决的问题,所以我衷心希望能帮助其他有同样问题的人。

© www.soinside.com 2019 - 2024. All rights reserved.