Last week or so I had to perform a demo installation of our mobile Moodle web application mTouch-U on a Windows 2003 Server with IIS 6 installed. I did know that it is possible to install ASP.NET MVC 3 application on IIS 6 but I had no hands on experience on that. As most of the devs who have to perform some sort of server installation I Googled a bit and found some resources. But to be honest none of the resource I've found and tried helped me much. Although most them were arranged as step-by-step guides sure they were missing something. Spending couple of hours with no success I decide to stop being lazy and decided to get my hands on the issue. Here is the steps I performed, I hope this post will not be one of these step-by-step guides missing something as well.
- Open the IIS Console
- Select the Site (possibly Default Site) you will install your ASP.NET MVC 3 application, in our case that is mTouch-U
- Right click and select New -> Virtual Directory from Context
- Specify mTouchU as the alias
- Give the path to the mTouch-U binaries folder as the
- After creating the virtual directory select it and open up the context menu by right clicking. Select Properties -> ASP.NET Page : Select 4.0... for ASP.NET version
- In the same properties dialog open up the Virtual Directory Page and click configure
- Open up Mappings Page click
- Specify c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll as the
- Specify .mvc as the
- Verbs section specify Limit To : GET, HEAD, POST,
- Check "Script engine"
- Uncheck "Verify that file exists"
- Right click on Web Service Extensions in IIS Manager
- Click on Allow all web service extensions for specific aplplication
- In the application combo box see if ASP.NET 4 exists. If not exit this dialog without performin any action, if ASP.NET 4 exists do not follow the following steps
- Right click on Web Service Extensions in IIS
- Click on Add new Web service
- Specify ASP.NET 4 as the extension name
- Click on Add... on the right of Required files list
- Specify c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll as "Path to file"
- Check "Set extension status to allowed" click ok
- Right click on mTouchU application in IIS Manager, select Properties from the context menu
- Select Custom Errors page
- Find 403;14 and select the item, then click to Edit button
- Select URL as the "Message Type"
- Specify /mtouchu/home.mvc/index as the URL value. When the user enters the base addrress to the broweser (i.e. http://www.domainname.com/m in our case) IIS 6 will automatically redirect the user to the Home controllers Index view.
That is it you will have your ASP.NET MVC 3 application running happily on IIS 6, I hope

bbc4c688-6797-409d-abdc-1919fc736d51|0|.0