全局 ASAX 错误:文件不存在

2023-12-31

我试图了解发生了什么错误将我发送到 Global ASAX OnError 处理程序。

using System;
using System.Web;

namespace GLSS.Components.HttpModules
{
  public class ExceptionModule : System.Web.IHttpModule 
  {
    private void OnError(object sender, EventArgs e)
    {
      HttpContext context = HttpContext.Current;

      //get the last error
      Exception ex = context.Server.GetLastError();
      if(ex.InnerException.GetType().ToString() == "CSLA.DataPortalException")
        ex = ex.InnerException;

这是我的异常转换为字符串

HttpContext.Current.Server.GetLastError().Message
"File does not exist."
HttpContext.Current.Server.GetLastError().StackTrace
"   at System.Web.StaticFileHandler.GetFileInfo(String virtualPathWithPathInfo, String physicalPath, HttpResponse response)
at System.Web.StaticFileHandler.ProcessRequestInternal(HttpContext context)
at System.Web.DefaultHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback callback, Object state)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)"

如何确定哪一行代码导致了此错误?我尝试将调试选项设置为在错误发生时中断,但它没有,我仍然处于 ONERROR 全局处理程序中。

一件事是我看到代码假设将出现内部异常,并且这似乎是 NULL 并且在处理程序中导致第二个错误。

我假设错误发生在编译代码中的某个地方。我检查了 Web.Config,唯一提到的路径是日志路径,这似乎有效并且日志记录似乎正在工作。

Update我在这里找到了一些额外的信息:

如何解决“文件不存在”异常? https://stackoverflow.com/questions/3705057/how-to-solve-exception-file-does-not-exist

当我在“立即”窗口中检查此内容时:

? HttpContext.Current.Request.Url.ToString()
"http://localhost:2322/favicon.ico"

然而,令我困惑的是,我使用“在文件中查找”搜索整个解决方案以查找 favicon.ico,但没有看到任何参考。

当我没有看到图标文件的引用时,为什么会出现找不到图标文件的错误?我猜有些程序集正在使用它?但为什么它要在网络根目录中寻找它呢?


大多数现代浏览器都盲目地发出对 favicon.ico 的请求,并且他们期望404(未找到文件)如果没有图标(这是正确的行为)。您可以在下面找到有关 HTML5 工作草案的引用链接类型“图标” http://www.w3.org/TR/2011/WD-html5-20110525/links.html#rel-icon :

在没有带有图标关键字的链接的情况下,对于获得的文档 通过 HTTP 或 HTTPS,用户代理可能会尝试获取和使用 带有通过解析 URL 获得的绝对 URL 的图标 /favicon.ico 对应文档的地址,就好像该页面有 使用 icon 关键字声明该图标。

您看到异常的原因是 Web 开发服务器或 IIS 配置为使用托管/集成管道模式通过所有请求全局.asax(包括错误)。

您可以尝试通过创建以下指向网站图标的虚拟链接来阻止浏览器发出请求:

<html>
    <head>
        <link rel="shortcut icon" href="#" />
        ...
    </head>
...
</html>

您还可以尝试以下其中一项:

  • 在开头添加以下行RegisterRoutes method:

    routes.IgnoreRoute("favicon.ico");

    甚至更扩展的版本:

    routes.IgnoreRoute("{*favicon}", new {favicon=@"(.*/)?favicon.ico(/.*)?"});

  • 为自己创建一个空文件作为图标
  • 通过检查过滤掉错误HttpException.GetHttpCode() for 404 and ((System.Web.HttpApplication)Sender).Context.Request.Url for /favicon.ico.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

全局 ASAX 错误:文件不存在 的相关文章

  • 这段代码有什么问题。如果用户选择或不选择复选框,为什么它仍然显示 MsgBox? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 无论我是否选择复选框 它仍然会给出
  • 装配和产品版本不匹配

    我正在尝试在 asp net 网站中使用 Ajax 控件工具包 我从之前的一个示例项目中复制了 dll 它有以下详细信息 Assembly Version 3 5 40412 0 File Version 3 5 40412 2 Inter
  • ASP.net获取硬件信息

    如果我创建一个 ASP net 页面 我是否能够获取当前用户的 CPUID 和 BIOS 序列号 还是出于安全原因不允许这样做 我目前有一个获取这些值的 Visual Basic net 应用程序 我只是想知道是否可以在网页上执行相同的操作
  • 为什么使用 Response 设置后,Request 中的 Cookie 立即可用?

    在页面加载中 如果您立即在下一行中执行 Response Cookies Add 您可以通过 Request Cookies 访问该 cookie 我知道在幕后 cookie 是由 net 添加到 Request Cookies 中的 但原
  • 从 Dropbox C# 下载文件[重复]

    这个问题在这里已经有答案了 我正在尝试下载 Dropbox 中的 pdf 文件 我需要将其保存到本地计算机中 可以是任何文件夹C Users User Desktop例如 这是我一直在使用的代码 public void DownloadPd
  • Server.Transfer 从 ASP 到 ASP.Net

    这是我的场景 桌面应用程序使用 XML 数据发布到我的 Web 应用程序中的特定 ASP 页面 Web 应用程序正在被重写为 ASP Net 但是 该特定页面的 URL 无法更改 由于桌面应用程序 我最初的想法是简单地将请求从经典 ASP
  • UpdatePanel 启动脚本未执行

    我正在编写一个在 SharePoint 网站中使用的 ASP NET Web 部件 并尝试使用 UpdatePanel 来呈现查询结果 我想使用 JQuery 插件来修改从异步回发返回的表 但我无法让启动脚本在异步更新上执行 我发现这个帖子
  • Jquery Ajax 调用返回 403 状态

    我有一个 jquery Ajax 调用来实现会话的 keepalive 这个 keepAlive 方法将每 20 分钟调用一次 function keepAlive ajax type POST url KeepAliveDummy asp
  • .NET ServiceModel.Syndicate - 更改 RSS 源的编码

    我正在尝试解决我在以下位置生成的所有 RSS 源的错误http captainobvio us http captainobvio us在 Internet Explorer 版本 8 和 9 中产生以下错误 进给代码错误 从当前切换 编码
  • Page.AsyncTimeout - 无休止的超时?

    I saw 一个例子 http www webreference com programming javascript rg30 index html of forever iframe实现 彗星模拟 所以我决定测试它 但添加了异步方法 这
  • pydev 断点不起作用

    我正在使用 python 2 7 2 sqlalchemy 0 7 unittest eclipse 3 7 2 和 pydev 2 4 开发一个项目 我在 python 文件 单元测 试文件 中设置断点 但它们被完全忽略 之前 在某些时候
  • MVC3数据缓存技术

    我有一个 sql 查询 存储过程 在结果显示在网络网格中之前需要大约 8 10 秒才能返回 关于 asp net mvc3 中的缓存的性能最佳实践是什么 以便用户不必每次都花费 8 10 秒来加载该数据 减少优化查询 你可以使用内存缓存 h
  • 在树视图 asp.net 中使用复选框

    我想知道如何对TreeView中选中的复选框进行编程 我想在用户在asp net中选中TreeView中的复选框时编写代码 我得到了称为TreeNodeCheckChange事件的事件 我在其中编写了一条response write 消息
  • 保护 ASP.NET MVC 应用程序中的 ajax 调用的安全

    我有一个基于 ASP NET MVC 的应用程序 它允许根据用户进行不同级别的访问 当前的工作方式是 当用户访问页面时 会根据数据库进行检查以确定用户拥有的权限 然后根据用户拥有的访问级别选择视图 有些用户比其他用户看到更多数据并拥有更多可
  • 使用 gdb 调试 qemu

    如何使用 gdb 调试 qemu 我一直在谷歌搜索但找不到任何具体的东西 我在 GDB 7 5 中遇到错误 gt 访问内存地址时出错 似乎 位置独立可执行文件 有问题 所以使用 configure enable debug disable
  • 如何强制控制器/操作使用 JsonValueProvider

    再会 我正在使用 ASP NET MVC 3 其中JsonValueProvider http haacked com archive 2010 04 15 sending json to an asp net mvc action met
  • 使用 Flutter Flavor 运行调试?

    我正在尝试在 Visual Studio 代码上为我的 flutter 应用程序运行调试模式 单击 运行和调试 但是当我这样做时 我面临以下问题 The Xcode project defines schemes release priva
  • 如何在服务器上保存用户凭据以在后台运行查询

    背景 我们有一个 ASP NET Silveright Web 应用程序 silverlight客户端显示用户 图形形式的特定数据 它从服务器请求数据 问题 由于服务器必须执行底层数据库查询 获取这些数据的成本很高 因此客户端必须等待 优化
  • 在 ASP.NET 中将事件冒泡为父级

    我已经说过 ASP NET 中的层次结构 page user control 1 user control 2 control 3 我想要做的是 当控件 3 它可以是任何类型的控件 我一般都想这样做 让用户用它做一些触发回发的事情时 它会向
  • 本地权威声明和外部提供商声明的混淆

    我正在创建一个简单的 WebApi 它允许用户与 Facebook 连接 当我从 facebook 获取 accessToken 时 我调用 RegisterExternal 创建 Asp Net Identity 记录并存储令牌中的声明

随机推荐

  • WP7 XNA游戏:如何适应不同手机分辨率?

    我创建了一款针对 800 x 480 分辨率的游戏 但对其适应其他 WP7 分辨率很感兴趣 另外 我听说游戏可以通过 Mono 和 ExEn 移植到 iPhone 和 Android 从而开放大量其他屏幕分辨率 处理这个问题的正确方法是什么
  • Linux - 在 Nouveau 驱动程序上运行 Android 模拟器

    Linux Debian Sid x64 内核 4 14 Nvidia GPU 我无法在开放的 Nouveau 驱动程序上运行 Android 模拟器 我没有可以发布任何错误消息 只是分段错误 当我选择软件渲染时 它可以工作但无法使用 运行
  • 返回接口的函数

    为什么我可以说 CreateLion 的结果 指向实现 Cat 接口的结构的指针 是 Cat 接口的实例 但我不能说 CreateLion 是 返回 Cat 的函数 类型界面 实现此类行为的标准 Golang 方法是什么 package m
  • 如何向 JAXB 中的文本元素添加属性?

    如何使用 JAXB 生成以下 XML 片段
  • Codeigniter 图片和源 URL

    我的 Codeigniter URL 有问题 我有一个控制器 welcome php
  • 如何从数组末尾删除第 n 个元素

    我知道您可以使用 array pop 删除数组中的最后一个元素 但如果我想删除最后 2 或 3 个 我该怎么办 那么如何删除该数组中的最后 2 个元素呢 Use 数组拼接 http www php net array splice并指定要删
  • 测试给定数组是否是子数组

    这是 Numpy 初学者提出的一个基本问题 我有一个 5 行 2 列的 2D 数组 您可以将其视为 10 个 2d 向量 我想测试给定的向量是否在表内 例如 gt gt gt tableau array range 10 dtype uin
  • 自定义 Google Maps API v3 中的默认 InfoWindow

    我想知道是否可以自定义当用户单击 Google 在其默认地图上显示的各种企业时弹出的默认信息窗口 请参阅 screenie 我想添加功能 让人们在浏览地图时偶然发现这些位置时 固定 这些位置 目前无法监听 POI 图标上的任何点击事件 因此
  • 在泛型中实现算术?

    是否可以像您一样在 C 泛型中实现基本算术 至少是加法 使用 C 模板 http nonchalantlytyped net blog 2010 04 24 church numerals in c 我已经尝试了一段时间让它们启动并工作 但
  • 类型错误:预期的字节字符串值序列,找到 str 类型的值

    我正在尝试使用运行一个简单的 hello world 应用程序mod wsgi对于 Python 3 我使用的是 Fedora 23 这是我的 Apache 虚拟主机配置
  • 使用 Visual Studio 安装项目自动注册和 GAC COM Interop DLL

    我已经为 COM 互操作创建了一个 NET 程序集 它在我的开发计算机上运行良好 我目前正在尝试弄清楚如何使用 Visual Studio 的 安装项目 将 DLL 部署到目标计算机 如何使用 VIsual Studio 安装项目执行以下操
  • 如何在 matplotlib 中用日期时间绘制 ohlc 烛台?

    我需要每 5 分钟绘制一次交易数据 一根蜡烛 这是我到目前为止所拥有的 from matplotlib finance import candlestick2 ohlc fig ax plt subplots candlestick2 oh
  • 多个单例实例

    我正在编写一个实用程序类库 其中许多都是单例 我已经使用继承来实现它们 template
  • 如何使用 vue-test-utils 在单元测试期间触发窗口事件

    我已经添加了 attachToDocument 但我仍然无法在窗口上触发 keyup 事件 我的依赖项的版本 vue test utils 1 0 0 beta 29 vue 2 5 18
  • 适用于 Android 的 Facebook SDK GraphUser

    我可以使用以下代码访问 GraphUser 的 id 名字 姓氏 性别和电子邮件 但是 我还需要访问 地点 好友数量 基本资料 及 工作公司 如何才能做到这一点 我尝试过其他 stackoverflow 链接 并检查了 Facebook S
  • jQuery Slick Slider 显示一些空幻灯片

    我正在使用 slick jQuery 插件创建一个产品滑块 其中滑块内容使用 js 填充 然后调用 slick 函数 slider 滑块似乎可以工作 但它显示了一些具有 slick cloned 类的空滑块 网站网址是 最后一个滑块工作正常
  • 从 Android Studio IDE 运行测试不会重建纯 java 库模块

    我在 Android Studio 中有一个项目 它只有一个非 android 的纯 java 模块 该模块包含一个我进行测试的类 如果我手动调用 测试会正确执行gradle build or gradle test 但如果我从 IDE 运
  • 尝试使用 Google 云语音 api 时抛出 403

    我正在使用 python 和 google cloud voice api 我完成了 中的所有步骤 如何在Python中使用谷歌语音识别API https stackoverflow com questions 38703853 how t
  • 负向前瞻正则表达式忽略单词列表

    我正在尝试编写一个正则表达式 它将找到后面跟着空格的任何单词 只要该单词不是AND OR NOT 在搜索类似问题后 我尝试了否定前瞻 这是我当前的正则表达式 AND OR NOT s 如果我尝试使用 AND 我会在 ND 上得到匹配 如果我
  • 全局 ASAX 错误:文件不存在

    我试图了解发生了什么错误将我发送到 Global ASAX OnError 处理程序 using System using System Web namespace GLSS Components HttpModules public cl