2014-12-04 119 views
1

我有一个ASP.NET MVC 4应用程序,这是我在OS X上使用Xamarin Studio开发的。我将其部署到运行Ubuntu Server(最新版本)的Docker容器中,其中使用单声道3.2.8与mod_mono和apache一起安装。Mod_Mono ASP.NET MVC 4部署问题

我已经成功地将网站配置为在mono-server-4下运行,因为它是.NET 4.0网站。不过,我收到以下错误:

[System.TypeLoadException]: Could not load type 'System.Web.Routing.RouteCollection' from assembly 'System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. 
     at (wrapper managed-to-native) System.Reflection.MonoMethodInfo:get_method_info (intptr,System.Reflection.MonoMethodInfo&) 
     at System.Reflection.MonoMethodInfo.GetMethodInfo (IntPtr handle) [0x00000] in <filename unknown>:0 
     at System.Reflection.MonoMethodInfo.GetDeclaringType (IntPtr handle) [0x00000] in <filename unknown>:0 
     at System.Reflection.MonoMethod.get_DeclaringType() [0x00000] in <filename unknown>:0 
     at System.Web.HttpApplicationFactory.GetApplicationTypeEvents (System.Type type) [0x00000] in <filename unknown>:0 
     at System.Web.HttpApplicationFactory.GetApplicationTypeEvents (System.Web.HttpApplication app) [0x00000] in <filename unknown>:0 
     at System.Web.HttpApplicationFactory.FireEvent (System.String method_name, System.Object target, System.Object[] args) [0x00000] in <filename unknown>:0 
     at System.Web.HttpApplicationFactory.FireOnAppStart (System.Web.HttpContext context) [0x00000] in <filename unknown>:0 
     at System.Web.HttpApplicationFactory.GetApplication (System.Web.HttpContext context) [0x00000] in <filename unknown>:0 
     at System.Web.HttpRuntime.Process (System.Web.HttpWorkerRequest req) [0x00000] in <filename unknown>:0 

我不知道为什么我得到这个错误,因为我有单完成目标服务器上安装和应用程序运行正常本地。任何帮助很多赞赏!

编辑:几次请求后(4或5),我似乎从同一个URL获得404。不知道这是否与之有关...

回答

0

我终于解决了这个问题。当在apache配置文件中设置MonoServerPath指令时,我似乎意外拼错了我的应用程序的名称。

0

我刚刚遇到了同样的问题,尝试使用XSP2在单声道上运行MVC应用程序。对我来说,解决方案是安装mono-xsp4,然后使用xsp4来运行它。