首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么IIS有时会显示错误页的aspx源代码?

问为什么IIS有时会显示错误页的aspx源代码?
EN

Stack Overflow用户
提问于 2021-03-18 03:23:23
回答 2查看 25关注 0票数 0

我有一个托管在IIS上的asp.net web表单网站。除错误页面外,所有内容都按预期工作。我在web.config中有如下自定义错误页设置:

代码语言:javascript
复制
<customErrors mode="On" defaultRedirect="error.aspx">
    <error statusCode="400" redirect="error.aspx" />
    <error statusCode="401" redirect="error.aspx" />
    <error statusCode="403" redirect="error.aspx" />
    <error statusCode="404" redirect="error.aspx" />
    <error statusCode="500" redirect="error.aspx" />
</customErrors>

如果我访问mysite.com/x.aspx (x.aspx不存在),它会正确地显示错误页面。但是,如果我访问mysite.com/x (x不存在),浏览器中就会显示aspx源代码(以"<%@ Page Title="“Language="C#”MasterPageFile...“开头)。

对于为什么会发生这种情况以及如何修复,您有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2021-03-18 05:08:34

ASP.net不会接收这些“无扩展”请求,而是由静态文件处理程序处理这些请求。

基本上,您需要自己安装URLReWrite模块并将无扩展请求重写/重定向到您的error.aspx页面。有各种各样的examples on SO for handling extensionless URLs

票数 0
EN

Stack Overflow用户

发布于 2021-03-18 21:47:59

尝试在web.conifg文件中使用以下代码:

代码语言:javascript
复制
<configuration>
   <system.web>
      <customErrors defaultRedirect="error.aspx" mode="RemoteOnly">
         <error statusCode="404" redirect="error.aspx"/>
      </customErrors>
   </system.web>
</configuration>

确保IIS管理器->功能委派中的错误页设置为读/写。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66679893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档