Deploy MVC 5 .Net web to IIS 7.5 (Win2008 R2)

Hi,
we have developed a sample site in Visual Studio 2013 using asp.net and C#.

When we run it from the IDE (VS2013) it works ok, but when we deploy it to our IIS 7.5 site it displays a message saying "Error HTTP 403.14 - Forbidden" (web server not configured to browse content directories)

If we try "http://localhost" the IIS site works ok.

Can you please help with this issue?
Thanks.
LVL 2
José PerezAsked:
Who is Participating?
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
So that mean you didn't followed suggestions (exactly) in comment id ID: 40462636 where I mentioned as

4. Restart your system. Deploy your website with DefaultAppPool set to Asp.Net 4.0. Ensure your deployed website to be using same pool.
0
 
käµfm³d 👽Commented:
How are you browsing to the "page"? You need to include a controller and possibly an action in the address bar when you navigate. If you are directly on the server, and if you are trying to browse via IIS Manager, then I believe it default to showing the application root. Include the full destination in your address bar, and it should come up.
0
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
Did you tried suggestion at link Deploying ASP.NET MVC 3 to IIS 6?

Replace MVC3 to MVC5 and IIS 6 to IIS 7.5. I hope it would help you to deploy website properly. Then test.

Share your testing results.
0
Making Bulk Changes to Active Directory

Watch this video to see how easy it is to make mass changes to Active Directory from an external text file without using complicated scripts.

 
José PerezAuthor Commented:
This is my RouteConfig.cs file in VS2013
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace Myiisserver
{
    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
        }
    }
}

Open in new window


It is supposed that if a user goes to : http://myiisserver/ the  Home page is displayed immediatelly, and that's the way it works in Visual Studio, but when deploying to IIS it does not load :(
0
 
José PerezAuthor Commented:
Attached is the inetmgr.exe screenshot.
IIS.png
0
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
Questions -

1. Share your steps for deployment
2. You didn't answered to kaufmed comment.
3. Did you tried suggestions on link I shared with you?
0
 
José PerezAuthor Commented:
I have followed suggestions.
The Controller is 'Home' the Action is 'Index', if I try http://localhost/myiisserver/Home/Index it says "Resource not found" if I only type "http://localhost/myiisserver/" it displays the iis site folder structure.

Attached is the folder structure of the deplyment to IIS.
iis-folder-structure.png
0
 
José PerezAuthor Commented:
I found the solution for Windows 8 at Register ASP.NET in IIS 8 on Windows 8

but for Windows Server 2008 R2 I don't know how to do same steps above (in the Server Manager / Features)
Can you please guide me?
0
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
I faced such issue. So here are notes from diary -

1. Go as per snapshot First - Install features as .Net Framework

Install .Net 4.0 or 4.5 framework as per snapshot
2. Go as per snapshot Second - Add role  services

Add role services so as to make ASP (or MVC) stuff work on Window Server 2008
3. Open cmd on Window Server 2008, and type following command -

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir

Replace %windir% by your actual window directory path.

For e.g. C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir  for registering Asp.Net 4.0 if it isn't yet.

4. Restart your system. Deploy your website with DefaultAppPool set to Asp.Net 4.0. Ensure your deployed website to be using same pool.

Test and share testing results.
0
 
José PerezAuthor Commented:
It now displays the folder structure list with files. Still does not displays the webpage.
0
 
José PerezAuthor Commented:
Here is the image...attached.
iis-folder-structure-iis-server.png
0
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
Show me snapshot of your system similar to second snapshot I shared with you.

I need to ensure if all steps followed as I asked to do.
0
 
José PerezAuthor Commented:
Finally I found the issue... had to configure 'Application Group' in IIS. Change from DefaultAppPool (2.0) to "ASPNet v4.0"
See. Attached image.
Solucion-Deploy-MVC-a-IIS-Windows-2008-S
0
 
José PerezAuthor Commented:
wow I missunderstood that line to exactly the opposite, sorry.
anyways, you deserve the points.
0
 
Vikram Singh SainiSoftware Engineer cum AD DeveloperCommented:
Well! You deserve points too for working on it consistently.

That's why I enjoy development. Because here exists solution to any issue unless we find it.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.