【问题标题】:the dll does not work in asp.net in IISdll 在 IIS 的 asp.net 中不起作用
【发布时间】:2011-09-07 02:44:49
【问题描述】:

我有一个 Asp.net 应用程序,它需要来自其他部门的第三方 .dll(事实上,它是需要 .dll 文件的 WebSerivce 之一)。

我将 .dll 文件放入 myapp/bin 中。

然后如果我调试这个应用程序,它可以工作,没有错误发生。

但是一旦我在正常模式下运行应用程序(我的意思是在 IIS 中创建一个指向我的应用程序路径的虚拟目录),我总是会得到“服务不可用”页面。此外,应用程序池“DefaultAppPool”将被停止。

不知道为什么?

更新: 错误编号:

消息 1

来源:W3SVC 事件 ID:1011 服务应用程序池的进程 “DefaultAppPool”与 World 发生了致命的通信错误 万维网发布服务。进程 ID 为“5684”。数据字段 包含错误号。错误号:8007006d

消息 2

来源:W3SVC 事件 ID:1002 应用程序池“DefaultAppPool”是 由于一系列故障而被自动禁用 为该应用程序池提供服务的进程。

http://support.microsoft.com/kb/885654/en-us

【问题讨论】:

  • 事件日志说明了什么?还有,融合日志呢?
  • 要么查看事件日志,要么尝试在 web.config 中设置 "" 并告诉我们显示的异常/消息。没有消息,我们无能为力。
  • 开始 |搜索“事件查看器”并运行它...然后查看应用程序错误日志。您可能会在其中看到与您所描述的问题相关的一些错误
  • 为什么会出现连接dll的错误?问题可能出在您的 iis 上
  • 首先,我清除所有事件,然后我运行我的应用程序,出现同样的错误,但添加了新事件。但是,在httperr1.log中,我发现了一些东西:connection_abandoned_by_apppool....503 appoffline Defaultapppool。

标签: asp.net dll


【解决方案1】:

如果您的 dll 是非托管的,则需要显式注册才能在 IIS7 中工作。否则 appPool 将直接关闭。

Register and Enable a Native Module on a Web server (IIS 7)

如果您的应用程序在您的 Web 服务器需要模块支持的行为。在你之后 注册一个本地模块,该模块将被加载并在 服务器上的每个应用程序池,但您还必须通过以下方式启用它 将其添加到模块功能页面的列表中。例如,你 可能有一个应用程序的自定义身份验证模块 需要。您必须注册.dll文件,然后启用本机 要运行的模块。然后,您可以在任何级别启用该模块 该模块是必需的,例如在站点或应用程序级别。

【讨论】:

  • 如果是,如何显式注册DLL?我正在使用 iis6
  • 在 IIS6 中您实际上不需要,这只是 IIS7 的问题(不知道您使用的是哪个)。要检查的另一件事-您是否下载了dll?在这种情况下它可能被阻止,右键单击属性选择取消阻止。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 2015-12-27
  • 2017-06-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多