6

Bunu yaşlanmaya çalıştıktan sonra, çatışmayı yönlendirmeyi ve daha fazlasını yapmayı düşündükten sonra - başlangıçtan ayrı bir proje başlattım. ancak diğer sayfalar (http://site/properties/index) çalışması - Kök sitesini (http://site/properties) erişmeye çalıştığınızda O "özellikleri" adlı bir MVC denetleyicisi gibi görünüyorÖzellikler adı verilen bir MVC denetleyicisi hakkında özel bir şey var mı?

daima 403,14 yasak iletisi döndürür.

Bir alanda denetleyici olarak iyi çalışıyor, ancak ana sitede oluşturamıyorum.

Herkesin bunun nedenini ve en iyi yolunun ne olduğunu bilip bilmediğini merak ediyordum?

cevap

2

Sorun, projenizin zaten AssemblyInfo.cs dosya için kullanılan, ancak diğer şeyler de var olan Properties adlı bir klasör içeriyor olmasıdır. İstemciye hangi dosyaların gönderileceğini çözmek için kullanılan motor, yönlendirme sırasında dosyalara ve klasörlere öncelik verir. Bu nedenle, http://site/properties URL'si oradan içerik yayınlamaya çalışıyor, bu da nihayetinde engelleniyor.

3

DavidG'nin answer numaralı ekine ek olarak.

Projeyi yayımladığınızda derlenmiş derlemenin bir Özellikler klasörü yoktur. Yerel olarak geliştirirken sorunu çözmek için, RouteExistingFiles değerini true olarak ayarlayabilirsiniz, böylece ASP.NET yönlendirmesi tüm istekleri işler.

public static void RegisterRoutes(RouteCollection routes) 
{ 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
     routes.RouteExistingFiles = true; 

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