Asp.net MVC部署应用程序问题

时间:2009-09-26 06:11:55

标签: asp.net-mvc httphandler

我不断遇到应用程序运行良好的各种问题,但是当推送到我的共享托管服务时,它会失败并抛出各种问题。是否一旦为虚拟目录设置了“集成管道”,那么从项目中的“发布”操作推送FTP应该“正常工作”的概念是什么?

似乎我错过了一些东西,因为我不断得到“找不到文件”,这个测试版网站就是一个例子 - > http://beta.myabriza.com js.axd和css.axd URL会生成无法找到的错误。这些是处理程序设置,用于在this优秀网站之后压缩CSS和JS。

当然这在我的开发机器上运行正常,但是当我将它推送到服务器时它似乎失败了。由于我在技术上不服务文件,我不知道它怎么找不到资源处理程序。

这是一张快照,说明了我想说的内容: alt text http://img15.yfrog.com/img15/4067/amijustgoingcrazy.jpg

我的web.config设置如下;

      <add verb="*" path="css.axd" type="Utils.Web.HttpHandlers.CSSHandler, Utils.Web" validate="false"/>
      <add verb="*" path="js.axd" type="Utils.Web.HttpHandlers.JSHandler, Utils.web" validate="false"/>

编辑:这是我的global.asax.cs(用于路由):

    public class MvcApplication : System.Web.HttpApplication
    {
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        // This is the default route to handle anything else
        routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults
        );

    }

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);

        // This is a debug utility to output the routes for a given entry, only enable on demand
      //    RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);
    }

问题可能是我缺乏开发/部署自定义资源处理程序的经验。如果是这样,太棒了!,请提出一些建议来制作魔法并获得一些小胜利的甜蜜味道。

2 个答案:

答案 0 :(得分:0)

你删除了这段代码吗?

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

答案 1 :(得分:0)

事实证明这是一个托管问题。某种程度上,www.arvixe.com上的bozos已经做了一些事情来防止这种情况发生。我在另一个托管服务提供商(www.asphostcentral.com)上发布了相同的代码,它运行正常。