【问题标题】:How to use mod_mono control panel if MVC4 application is in root site如果 MVC4 应用程序位于根站点中,如何使用 mod_mono 控制面板
【发布时间】:2014-05-06 10:02:36
【问题描述】:

ASP.NET MVC4 应用程序在 Debian Linux 中使用 mod_mono 和 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


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

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

      baseUrl/控制器/方法

      应该有助于解决问题

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-24
        • 1970-01-01
        相关资源
        最近更新 更多