Saya punya masalah kode warisan yang mengharuskan saya mendukung url acak seolah-olah itu adalah permintaan untuk beranda. Beberapa URL memiliki karakter di dalamnya yang menghasilkan kesalahan "Nilai Request.Path yang berpotensi berbahaya terdeteksi dari klien (&)" . Situs ini ditulis dengan ASP.Net MVC 3 (dalam C #) dan berjalan di IIS 7.5.
Berikut contoh URL ...
http://mywebsite.com/Test123/This_&_That
Inilah cara saya memiliki pengaturan rute penampung semua (saya memiliki rute lain untuk menangkap halaman tertentu) ...
routes.MapRoute(
"Default", // Route name
"{garb1}/{garb2}", // URL with parameters
new { controller = "Website", action = "Home", garb1 = UrlParameter.Optional, garb2 = UrlParameter.Optional } // Parameter defaults
);
Saya telah menambahkan hal-hal berikut ke file web.config saya ...
<configuration>
<system.web>
<pages validateRequest="false" />
<httpRuntime requestValidationMode="2.0" />
</system.web>
<configuration>
Saya juga telah menambahkan atribut ValidateInput ke tindakan yang seharusnya menangkap url ...
public class WebsiteController : Controller
{
[ValidateInput(false)]
public ActionResult Home()
{
return View();
}
}
Tapi saya masih mendapatkan kesalahannya. Ada ide mengapa? Apakah saya melewatkan sesuatu? Saat ini saya hanya menjalankan server dev lokal saya (saya belum mencoba perbaikan ini dalam produksi).