2010-03-15 29 views
1

我想在IIS 6和Windows 2003上运行的共享服务器上传一个ASP.NET MVC应用程序。我没有访问IIS的权限。我已经改变了global.asax.cs文件,如下所示:如何在共享主机中部署ASP.NET MVC应用程序而不会丢失美丽的URI?

 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 = "" } 
     ); 

它工作正常,但它不会在控制器结束掉落.aspx。有没有办法删除URL中的.aspx扩展名?

+0

你知道你在哪个版本的IIS上运行?如果您正在使用7,请确保您在集成管道模式下运行 – Sergio 2010-03-15 12:27:16

+0

使用Gearhost时,我只是要求他们更改该设置,并且他们确实如此。 – 2010-03-15 12:30:50

回答

1

据我所知,你的URI应该在IIS7上工作。

如果你在IIS6上,但是你需要跳过一些环节来获得无扩展的URI。

本指南可以帮助 - haacked.

至于我可以告诉虽然你将需要访问在IIS6处理器映射,你可能不会有你的共享主机。

+1

被诟病的教程是非常有用的。谢谢。但我没有IIS访问.. :(没有用在快乐,如果应用程序在开发机器单独工作,是吗?:) – ZX12R 2010-03-15 12:28:15

1

不,这是因为您的主机没有设置IIS通过ASP.NET发送所有请求。你唯一能做的就是让你的主机改变这个设置。

1

更改主机。认真。共享托管STILL使用IIS 6 - 这是残酷的。主持人应该在一段时间之前转换过来。

+0

说非常容易... :)我坚持与已经买了一个客户端空间和提供者的反应最少...... :( – ZX12R 2010-03-15 12:53:36