Проверка URL ASP.NET

У нас есть специальный обработчик REST в ASP.NET, который настроен так, чтобы обрабатывать все входящие запросы:

<add path="*" verb="*" type="REST.RESTProtocolHandler"/>

Однако передача ему символа канала, должным образом закодированного или не закодированного, вызывает ошибку проверки, которая, по-видимому, исходит из ASP.NET.

Доступ к<a href="http://localhost:8080/%7c" rel="nofollow noreferrer">http://localhost:8080/%7c</a> или же<a href="http://localhost:8080/|" rel="nofollow noreferrer">http://localhost:8080/|</a> выдает эту ошибку:

[ArgumentException: недопустимые символы в пути.] System.IO.Path.CheckInvalidPathChars (String path) +7489125 System.IO.Path.Combine (String path1, String path2) +40 System.Web.Configuration.UserMapPath.GetPhysicalPathForPath (String path , Отображение VirtualDirectoryMapping) +114 System.Web.Configuration.UserMapPath.GetPathConfigFilename (String siteID, путь VirtualPath, String & directory, String & baseName) +72 System.Web.Configuration.UserMapPath.MapPath (String siteID, путь VirtualPath) +. Web.Configuration.UserMapPath. +51 System.Web.CachedPathData.GetConfigPathData (String configPath) +341 System.Web.CachedPathData.GetVirtualPathData (VirtualPath virtualPath, логическое allowPathsOutsideApp) +110 System.Web.HttpContext.GetFilePathD ( .HttpContext.GetConfigurationPathData () +26 System.Web.Configuration.RuntimeConfig. e, Boolean canThrow, Boolean localExecute) +101 System.Web.HttpRuntime.FinishRequest (HttpWorkerRequest wr, контекст HttpContext, исключение e) +383

Пользовательский код не выполняется. Это вариант конфигурации где-то? Воспроизведено на сервере devel IIS 7 & VS Studio 2008 года.

Переполнение стека, кажется, обрабатывает эту ошибку ОК, похоже, что динамически генерируемая страница 404 MVC обрабатывается дляhttps://stackoverflow.com/%7c.

Есть идеи?

Ответы на вопрос(4)

Ваш ответ на вопрос