Mod_mono忽略global.asax和httpmodules

时间:2013-12-22 17:08:36

标签: apache mono asp.net-4.0 mod-mono

我正在尝试将网站从IIS移动到mod_mono& apache2 combo并且已经运行了大部分网站。但是,我需要一些方法来设置关于日志记录的未处理异常的事件处理程序以及我想在httpmodules中执行的大量URL重写。

代码在IIS上运行正常。目标框架是.NET 4.0,代码主要是VB.NET。但是在我的Linux设置上,似乎没有一种方法被调用过。不是我的httpmodules中的Init或者应该通过此注册的任何处理程序。
Global.asax中的方法似乎也被忽略了。

为了记录,我正在运行ubuntu Saucy Salamander。我将我的网站编译成一个包含visual studio发布网站功能的部署包,而apache说:
版本信息:Mono Runtime版本:2.10.8.1(Debian 2.10.8.1-5ubuntu2); ASP.NET版本:4.0.30319.1

另外,对于web.config,我在system.web和system.webServer下都添加了httpmodules:

  <system.web>
    ...
    <httpModules>
      <add name="SiteModule" type="Sitemodule"/>
      ...
    </httpModules>
  </system.web>

  <system.webServer>
    <modules>
      <add name="SiteModule" type="SiteModule"/>
      ...
    </modules>
    ...
  </system.webServer>

那么,这种行为可能是什么原因?是否错误配置了服务器,或者网站代码是否需要进行一些更改以适应新环境?

1 个答案:

答案 0 :(得分:0)

您是否找到了问题的答案?

我刚试过类似的东西...... 我将Global.asax文件部署到Web根目录并重新启动了apache服务,它刚刚起作用。 我手动将文件复制到Web服务器,而不是使用VS部署选项。

FWIW:Ubuntu 12.04.5 LTS,单声道3.6.0,.NET 4.0,C#