HTTP Error 403.14 - Forbidden

0

Robię sklep w MVC i jak na razie wszystko szło dobrze do wczoraj. Jeszcze w piątek jak coś tam dopisałem i z debugowałem to wszystko działało. Wczoraj dodałem style bootstrapa do widoku i drugą trasę w pliku RouteConfig i się sypło. Mam błąd HTTP Error 403.14 - Forbidden. Spróbowałem naprawić to różnymi sposobami wyczytanymi w necie ale nic nie pomaga. Dodam,że jak po adresie localhost:1955/ wpiszę "Home" czyli localhost:1955/Home to wszystko działa, ale nie działa mi domyślana trasa i nie mogę sobie z tym poradzić. Pogrzebałem troche na serwerze IIS i nic próbowałem zmieniać w pliku RouteConfig ale nic to nie dało.

Na stronie MS$ znalazłem na temat kodów błędu w IIS 7 takie coś 403.14 - odmowy katalogu. - tylko ja już włączyłem na serwerze przeglądanie katalogów i w aplikacji według instrukcji wyświetlającej mi się wraz z błędem.

Plik RoutConfig

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

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

            routes.MapRoute(
                name: null,
                url: "Strona{page}",
                defaults: new { Controller = "Product", action = "List" }
            );

             // nawet jak tutaj zmienie na starą trasę czyli zamiast Product dam Home, 
             // a zamiast List, Index to też już nie działa
            routes.MapRoute(
                name: "Default",
                url: "{contoller}/{action}/{id}",
                defaults: new { controller = "Product", action = "List", id = UrlParameter.Optional }
            );
        }
    }
}

Plik List

 @model SportsStore.WebUI.Models.ProductsListViewModel

@{
    ViewBag.Title = "Produkty";
}

@foreach (var p in Model.Products)
{
    <div class="well">
        <h3>
          <strong>@p.Name</strong>
            <span class="pull-right label label-primary">@p.Price.ToString("c")</span> 
        </h3>
            <span class="lead">@p.Description</span>
    </div>
}

<div class="btn-group pull-right">
    @Html.PageLinks(Model.PagingInfo, x => Url.Action("List", new { page = x}))
</div>

Plik Product

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SportsStore.Domain.Entities
{
    public class Product 
    {
        public int ProductID { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public decimal Price { get; set; }
        public string Category { get; set; }
    }
} 
0

A do czego masz ten 1-wszy routing?

0

W każdym razie nie wiem gdzie był błąd, ale zdefiniowałem nowe trasy, trochę inne bo musiały uwzględniać podział na kategorie no i teraz działa wszystko poprawnie. Czyli błąd był w pliku RoutConfig, jakby ktoś wiedział w którym miejscu to może mi wskazać?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.