Не удается получить IIS7 и .NET 3.5, чтобы разрешить URL-адреса, содержащие двоеточия - PullRequest
1 голос
/ 14 июля 2011

В настоящее время мы переходим с php (apache) на веб-сайт MVC на IIS 7. У нас есть большое количество устаревших URL-адресов для поддержки (чтобы Google был доволен), которые содержат то, что IIS 7 считает недействительными символами, в частности : и &.

Мы применили стандартное исправление общего слоя исправлений, чтобы эти специальные символы проходили через, например,

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET]
"VerificationCompatibility"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters]
"AllowRestrictedChars"=dword:00000001

, и хотя теперь мы можем заставить & работать с двоеточием, произойдет сбой со следующей ошибкой

[NotSupportedException: The given path's format is not supported.]
System.Web.Configuration.ProcessHostMapPath.MapPathCaching(String siteID, VirtualPath path) +868         
System.Web.Configuration.ProcessHostMapPath.System.Web.Configuration.IConfigMapPath2.MapPath(String siteID, VirtualPath path) +9

Похоже, что все это учитывается в .NET 4.0, но сейчас нам нужно выпустить версию 3.5.

Кто-нибудь получил поддержку URL-адресов, содержащих двоеточия, работающих на Iis 7 и.NET 3.5?

...