I been interested in asp.net mvc since its preview2 release but really its now that I am playing with it. I have downloaded the asp.net mvc preview4 and is currently enjoying the cool new method of developing asp.net websites.
An important feature of asp.net mvc framework is its pretty urls and ability to map incomming requests to controllers and action like other mvc frameworks. However the url format like "/blog/archive/hellow-world" would not work on iis6 by default. For these types of urls to work on iis, we either have to setup iis to route all incomming requests to asp.net or use a different url format.
Check out this blog post "Deploy ASP.NET MVC on IIS 6, solve 404, compression and performance problems" by Omar AL Zabir for a description of problems you will run into when deploying asp.net mvc application on iis6 and solutions for them. You may also want to check out this article on codeproject which uses the 404 page not found redirection to symulate an extension less url format.
The problem gets more bad if you are hosting your mvc site on a shared host as most of them will not allow making the changes required for routing all requests to the asp.net.
Bit ugly but simple solution which will work everywhere
The solution is to change the url format. Instead of having "/controller/action" we can have "/controller/action.aspx". This way, all the urls will have .aspx as their extension and naturally be handled by asp.net. This work around also removes the need for handling those good things our self which IIS does for us.
Yes the url "/blog/archive.aspx" looks ugly, compared to the "/blog/archive" but may be the only simple solution for using asp.net mvc on a restricted shared host.
Code snippet
RouteTable.Routes.MapRoute(null, "{controller}.aspx", new { controller = "home", action = "index" });
RouteTable.Routes.MapRoute(null, "{controller}/{action}.aspx", new { controller = "home", action = "index" });
The above code snippet is from the application_start event. With this routing rules set, the requests like "/home.aspx" and"/home/about.aspx" will be handled correctly. Have not found any issue yet with this url style, will post if found.
All the best asp.net mvc!