Ho un problema con il codice precedente che richiede il supporto di URL casuali come se fossero richieste per la home page. Alcuni URL contengono caratteri che generano l'errore "È stato rilevato un valore Request.Path potenzialmente pericoloso dal client (&)" . Il sito è scritto con ASP.Net MVC 3 (in C #) ed è in esecuzione su IIS 7.5.
Ecco un esempio di URL ...
http://mywebsite.com/Test123/This_&_That
Ecco come posso impostare il mio percorso universale (ho altri percorsi per catturare pagine specifiche) ...
routes.MapRoute(
"Default", // Route name
"{garb1}/{garb2}", // URL with parameters
new { controller = "Website", action = "Home", garb1 = UrlParameter.Optional, garb2 = UrlParameter.Optional } // Parameter defaults
);
Ho aggiunto le seguenti cose al mio file web.config ...
<configuration>
<system.web>
<pages validateRequest="false" />
<httpRuntime requestValidationMode="2.0" />
</system.web>
<configuration>
Ho anche aggiunto l'attributo ValidateInput all'azione che dovrebbe catturare gli URL ...
public class WebsiteController : Controller
{
[ValidateInput(false)]
public ActionResult Home()
{
return View();
}
}
Ma ricevo ancora l'errore. Qualche idea sul perché? Ho dimenticato qualcosa? In questo momento sto solo eseguendo sul mio server di sviluppo locale (non ho ancora provato queste correzioni in produzione).