title: Routing not working in razor
body: <p>I have problems with the routing for my razor mvc 4 site.</p>
  
  <p>The Newssite is in a custom area, here ist the <code>NewsAreaRegistration</code></p>
  
  <pre><code>using System.Web.Mvc;
  
  namespace Web.Areas.News {
      public class NewsAreaRegistration : AreaRegistration {
          public override string AreaName {
              get {
                  return "News";
              }
          }
  
          public override void RegisterArea(AreaRegistrationContext context) {
              context.MapRoute(
                  name: "News",
                  url: "news/read/{news}",
                  defaults: new { controller = "Home", action = "Index", news = "" },
                  namespaces: new[] { "Web.Areas.News.Controllers" }
              );
              context.MapRoute(
                  name: "News_default",
                  url: "news/{action}",
                  defaults: new { controller = "Home", action = "Index", news = "" },
                  namespaces: new[] { "Web.Areas.News.Controllers" }
              );
          }
      }
  }
  </code></pre>
  
  <p>Here is the controller</p>
  
  <pre><code>namespace Web.Areas.News.Controllers {
  
      public class HomeController : Controller {
          private DataModel websiteModel = new DataModel();
  
          //
          // GET: /News/
          [AllowAnonymous]
          public ActionResult Index(string news = "") {
              if (!websiteModel.NewsExists(news))
                  return View("Index");
              else
                  return View("Read", new NewsModel(websiteModel.GetNews(news.ToLower())));
          }
  
          [AllowAnonymous]
          public ActionResult Read(string news = "") {
              return RedirectToAction("Index", new { news = news });
          }
      }
  }
  </code></pre>
  
  <p>When I try to access <code>http://localhost/news/</code> I just get a 404. Any ideas how to fix it?</p>
  
  <p><strong>EDIT</strong> Early I had it in my <code>RouteConfig</code>, there it worked fine. After a small refactor, I moved the three areas I have, Home, Admin and News, in seperated Areas, now only the news don't work, the rest works fine.</p>
  
  <p>The News were earlier in the <code>HomeAreaRegistration</code> this looked like that:</p>
  
  <pre><code>using System.Web.Mvc;
  
  namespace Web.Areas.Home {
      public class HomeAreaRegistration : AreaRegistration {
          public override string AreaName {
              get {
                  return "Home";
              }
          }
  
          public override void RegisterArea(AreaRegistrationContext context) {
              context.MapRoute(
                  name: "News",
                  url: "News/Read/{news}",
                  defaults: new { controller = "News", action = "Index", news = "" },
                  namespaces: new[] { "Web.Controllers" }
              );
              context.MapRoute(
                  name: "Default",
                  url: "{controller}/{action}/{id}",
                  defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                  namespaces: new[] { "Web.Controllers" }
              );
          }
      }
  }
  </code></pre>
  
  <p><strong>EDIT 2</strong> The page is running on my local IIS, not IIS Express and on port 80.</p>
  
  <p><strong>EDIT 3</strong> The <code>NewsAreaRegistration</code> routes are all registered, I just could check it.</p>