过去2天,我一直在研究此问题。我已经研究过许多类似的问题,并且已经完成了显示为答案的所有工作,但是仍然无法正确使用类.asp应用程序。
我能够启动我的Web应用程序-第一页是“登录”页面,输入凭据(有效),单击“确定”,然后加载,然后出现以下错误:
处理URL时服务器上发生错误。请 请与系统管理员联系。如果您是系统管理员 请单击此处以了解有关此错误的更多信息。
这是在告诉我我没有安装经典的ASP-因此我按照说明进行操作,并另外查看了SO上的其他类似问题,并做到了:
那很好,接下来我遇到另一个问题-How to enable ASP classic in IIS7.5
这就是我所做的:
因此,要解决此问题,请转到您要添加您的网站 应用程序,然后双击处理程序映射。点击“添加 脚本映射”,然后输入以下信息:
RequestPath:* .asp可执行文件:C:\ Windows \ System32 \ inetsrv \ asp.dll 名称:经典ASP(可以是您想要的任何形式)
像这样:
但是,我仍然遇到同样的问题。我在IIS中添加了一个新站点,然后为我的Classic .ASP文件添加了目录。要启动它,我单击右侧的“开始”,如下所示:
我单击BROWSE,然后打开LOGIN页面,再次正确打开登录页面,我在URL栏中看到的只是显示:https://localhost/
,现在,一旦单击OK按钮进行登录,它就是假设执行Response.Redirect test.asp,在这种情况下,它显示:https://localhost/test.asp
对于这个疯狂的冗长问题,我深表歉意,但在发布此问题之前,我想穷尽所有选择。任何帮助将不胜感激。
编辑:PER Daniel,我将错误设置配置为“将错误发送到浏览器”,这是我收到的信息:
响应对象错误'ASP 0251:80004005'
超出响应缓冲区限制
/Test.asp,第0行
ASP页面的执行导致响应缓冲区超过其缓冲区 配置的限制。
答案 0 :(得分:0)
首先,从IE删除“友好的http错误消息”,然后选中“向浏览器发送错误”。您会看到真正的错误消息。
答案 1 :(得分:0)
ASP通常缓冲整个页面,并且仅在缓冲区中生成整个页面之后才输出。但是,缓冲区的大小是有限的-如果有内存,则约为4MB。看来您在这里有一个 really 大页面,而且很令人窒息。
因此,您要做的就是在运行时输出缓冲区。假设写了500行,然后使用Response.Flush
例如,假设我要遍历大量记录并将其输出到页面。我可以在每个记录上迭代x,然后在循环结束时执行以下操作:
if x >= 500 then
x = 0
Response.Flush
end if