Azure上的经典ASP网站"由于发生内部服务器错误,无法显示该页面."

VVe*_*Vee 9 cloud azure asp-classic web

我们已将使用经典asp编写的应用程序迁移到Azure网站(共享),有些页面只是提供错误"由于发生内部服务器错误,无法显示页面".没有任何细节.这些页面在IIS 7或使用IIS express下工作正常.但是在Azure网站上他们没有.

正如在其他一些帖子中所建议的那样,我为Azure上的网站配置了以下内容:

1)Web服务器日志记录 - ON
2)详细的错误消息 - ON
3)Web.config - customErrors模式关闭.

<customErrors mode="Off"/>
 <compilation debug="true" targetFramework="4.0">
Run Code Online (Sandbox Code Playgroud)

仍然是日志消息不提供任何更多细节错误,只是提供以下信息:

详细错误信息:

模块IsapiModule
通知ExecuteRequestHandler
处理程序ASPClassic
错误代码0x00000000

如果在Azure网站上调试经典的asp页面问题,我们将不胜感激.谢谢.

VVe*_*Vee 11

谢谢G. Stoynev!添加自定义错误asp页面后它工作了!我使用以下链接中的代码创建自定义错误asp页面

http://support.microsoft.com/kb/224070

此外,以下链接也帮助了http://www.tacticaltechnique.com/web-development/classic- asp-getlasterror-in-iis7 /

现在web.config中的system.webServer部分如下所示:

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true"/>
    <httpErrors> 
     <remove statusCode="500" subStatusCode="100" />
     <error statusCode="500" subStatusCode="100" prefixLanguageFilePath="" path="/errors.asp" responseMode="ExecuteURL" /> 
   </httpErrors> 
  </system.webServer>
Run Code Online (Sandbox Code Playgroud)


Mik*_*ill 7

一个(奇怪的)尝试,这对我有用:

尝试FTP到您的Azure网站,并将您重命名web.config为完全不同的东西.

我将我重命名为web.config2- Azure "The page cannot be displayed because an internal server error has occurred."错误消息消失了,我的ASP.Net应用程序再次爆发.

从那里,我从头开始重新创建web.config,从我的原始版本一块一块地复制它(看看导致问题的原因)

是的,我知道......这是一个愚蠢的建议,但Azure没有给我任何关于导致错误的原因的暗示,即使开启了日志记录,这也节省了我的理智!


G. *_*nev 0

  1. 您的问题可能出在浏览器端:确保 IE 设置“显示友好消息”已关闭
    在此输入图像描述

  2. 另外,在服务器端,您必须有一些设置以允许将错误消息发送到客户端(抱歉,我只能访问该设置的 IIS 风格...不确定 Azure 中的内容):
    在此输入图像描述

  • 试试这个:在 web.config 中添加到 `&lt;system.webServer&gt;` 部分 `&lt;httpErrors existingResponse="PassThrough" /&gt;`。我还会尝试自定义 500.100 页面 - 必须允许它们! (3认同)