如果MVC4应用程序在根站点中,如何使用mod_mono控制面板

问题描述 投票:0回答:2

ASP.NET MVC4应用程序使用mod_mono和Debian Linux中的Mono 3.2.8在example.com站点根目录上运行。

使用下面的配置启用单声道控制面板。

在浏览器中键入http://example.com/mono会在下面返回404错误。

看起来这个请求被路由到应用程序而不是由mod_mono处理。

如果asp.net mvc应用程序在站点根目录中运行,如何使用mod_mono控制面板?

store.conf:

Alias / "/var/www/store"
MonoServerPath "/opt/m328/bin/mod-mono-45est"
MonoApplications "/:/var/www/store"
  <Location "/">
    Allow from all
    Order allow,deny
    SetHandler mono
  </Location>

mod_mono.conf:

<IfModule !mod_mono.c>
    LoadModule mono_module /opt/m328/mod_mono-2.10/src/.libs/mod_mono.so
</IfModule>


<Location /mono>
  SetHandler mono-ctrl
Order deny,allow
Allow from all
</Location>
MonoAutoApplication disabled

错误返回:

System.Web.HttpException
The resource cannot be found.

Description: HTTP 404.The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
Details: No virtual path information available.
Exception stack trace:
  at System.Web.Mvc.DefaultControllerFactory.GetControllerInstance (System.Web.Routing.RequestContext requestContext, System.Type controllerType) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.DefaultControllerFactory.CreateController (System.Web.Routing.RequestContext requestContext, System.String controllerName) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.MvcHandler.ProcessRequestInit (System.Web.HttpContextBase httpContext, IController& controller, IControllerFactory& factory) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.MvcHandler.BeginProcessRequest (System.Web.HttpContextBase httpContext, System.AsyncCallback callback, System.Object state) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.MvcHandler.BeginProcessRequest (System.Web.HttpContext httpContext, System.AsyncCallback callback, System.Object state) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest (System.Web.HttpContext context, System.AsyncCallback cb, System.Object extraData) [0x00000] in <filename unknown>:0 
  at System.Web.HttpApplication+<Pipeline>c__Iterator1.MoveNext () [0x00000] in <filename unknown>:0 
  at System.Web.HttpApplication.Tick () [0x00000] in <filename unknown>:0 
Version Information: 3.2.8 (tarball K veebr 26 18:28:53 EET 2014); ASP.NET Version: 4.0.30319.17020
asp.net-mvc apache asp.net-mvc-routing url-routing mod-mono
2个回答
0
投票

对我来说,它是应用程序本身有问题,而不是mod_mono或mod_mono配置,因为它已经找出了MVC


0
投票

确保你有一个控制器和一个方法

然后使用以下命令调用URL:

的baseUrl /控制器/方法

应该有所帮助

© www.soinside.com 2019 - 2024. All rights reserved.