How to deploy ASP.NET MVC application in a shared hosting without losing the beautiful uri?

拟墨画扇 提交于 2019-12-11 07:37:33

问题


I am trying to upload an ASP.NET MVC application in a shared server running on IIS 6 and Windows 2003. I don't have access to IIS. I've changed the global.asax.cs file as follows:

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

        routes.MapRoute(
            "Default",
            "{controller}.aspx/{action}/{id}",
            new { action = "Index", id = "" }
          );

        routes.MapRoute(
          "Root",
          "",
          new { controller = "Home", action = "Index", id = "" }
        );

It is working fine, but it doesn't drop the .aspx at the end of the controller. Is there a way to remove the .aspx extension in the URL?


回答1:


As far as I know you're URI's should work off the bat providing you are on IIS7.

If you are on IIS6 however you will need to jump through some hoops to get extensionless URI's.

This guide may help - haacked.

As far as I can tell though you'll need access to handler mappings in IIS6, which you probably won't have on your shared host.




回答2:


No, it's because your host has not set IIS to send all requests through ASP.NET. The only thing you can do is to ask your host to change this setting.




回答3:


Change the host. Seriously. Shared hosting STILL using IIS 6 - that is brutal. Hosts should have switched over quite some time ago.



来源:https://stackoverflow.com/questions/2446907/how-to-deploy-asp-net-mvc-application-in-a-shared-hosting-without-losing-the-bea

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!