[英]Classic ASP on IIS7: refusing to send errors to browser on 500 Internal Server Error
我在 IIS 7 上运行经典 ASP。
即使我将 ASP“调试属性”配置为“向浏览器发送错误 = True”,Web 应用程序拒绝向浏览器发送错误并继续发送 500 内部服务器错误。
有任何想法吗?
尝试:Internet信息服务(IIS)管理器- >默认网站- >单击错误页面属性,然后选择详细信息错误
我在网站的子文件夹中运行的经典ASP应用程序遇到了同样的问题。 我已经启用了详细的错误,500仍在显示。 我的解决方案是在IIS中为站点启用ASP部分中的父路径,因为应用程序使用“../”引用父文件夹:
我在一个运行在站点的子文件夹中的Classic ASP应用程序中发生了这种情况。 解决方案是:
IIS > Click into your Site > Click into your Application folder > Error Pages > Edit Feature Settings > set to: Detailed Errors
IIS管理器>>双击ASP图标以打开ASP页面。 展开“调试属性”节点,并将“将错误发送到浏览器”设置为True 。
如果您在共享环境中托管项目,则可以使用以下代码段来查看错误。
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" />
</system.webServer>
<system.web>
<customErrors mode="Off" />
<compilation debug="true" />
</system.web>
有关完整信息,请参阅此URL http://blogs.iis.net/rickbarber/working-past-500-internal-server-error
希望它可以帮助某人
如果您的网站配置为以特定用户身份连接到网站的物理路径,并且使用传递身份验证,则如果此用户存在权限错误,则可能会出现此错误。 可能还需要重新启动Windows进程激活服务,然后重新启动IIS。
我刚刚在新服务器(Windows 2019)上安装的 ASP Classic 应用程序出现 500 错误。 无论如何,应用程序上的每个 URL 都返回 500。 但是 Windows 事件日志中没有显示任何错误,尽管配置了详细的错误,正如这里的其他几个答案中提到的那样,浏览器中没有显示特定的错误。
唯一的线索是在 IIS 日志中,它显示 HTTP 状态代码为 500,而 IIS 子状态代码为 19。所以是 500.19 错误。
这导致了我,本节的第二部分回答了我遇到的具体问题:
https://docs.microsoft.com/en-us/troubleshoot/iis/http-error-500-19-webpage#hresult-code-0x80070005
其中说:
不要将网站配置为使用 UNC 直通身份验证来访问远程 UNC 共享。 相反,请指定具有访问远程 UNC 共享的适当权限的用户帐户。
和(这是我需要做的部分):
向 IIS_IUSRS 组授予 ApplicationHost.config 或 Web.config 文件的读取权限。 为此,请按照下列步骤操作:
在 Windows 资源管理器中,找到包含与网站关联的 ApplicationHost.config 文件的文件夹,或者找到包含与网站关联的 Web.config 文件的虚拟目录或应用程序目录。
笔记
Web.config 文件可能不在 IIS 中的虚拟目录或应用程序目录中。 即使在这种情况下,您也必须遵循这些步骤。
右键单击包含 ApplicationHost.config 文件的文件夹,或右键单击可能包含 Web.config 文件的虚拟目录或应用程序目录。
选择属性。
选择安全选项卡,然后选择编辑。
选择添加。
在“输入要选择的对象名称”框中,键入 \\IIS_IUSRS,选择“检查名称”,然后选择“确定”。
笔记
是计算机名称的占位符。
选中读取复选框,然后选择确定。
在文件夹的“属性”对话框中,选择“确定”。
笔记
确保文件夹属性由 ApplicationHost.config 和 Web.config 文件继承,以便 IIS_IUSRS 对这些文件具有读取权限。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.