2009-05-01 15 views
5

así que tengo esta URL: http://test.com/afolder/who-else-wants-to-make-horror-movies%3f/HTTP 400: detectó caracteres no válidos en la URL. IIS decodificando la URL demasiado pronto ¿Que está pasando aqui?

que se URL codificada versión de: http://test.com/afolder/who-else-wants-to-make-horror-movies?/

Pero IIS7 tiros un 400:

Error HTTP 400.0 - Solicitud incorrecta ASP.NET detectado caracteres no válidos en la URL .

¿Pero por qué está haciendo eso si he codificado correctamente la URL?

También estoy teniendo el mismo problema con otros caracteres URL codificados como '/' que es '% 2f', pero cuando .net resuelve el controlador lo hace después de decodificar el URL que cambia la ruta efectiva, grrrr.

+0

¿Es posible no utilizar esos caracteres en la URL? –

+0

heh, la negación es mejor que curar? Supongo que podría despojarlos, pero esperaba descubrirlo también. – rizzle

Respuesta

5

Parece que hay algunos problemas con IIS7 en 64 .... No estoy seguro si esto es su problema o no:

http://blogs.iis.net/rakkimk/archive/2008/10/10/asp-net-2-0-x64-you-may-get-http-400-bad-request-or-error-as-mentioned-in-kb-932552-or-826437.aspx

+0

De hecho, estoy ejecutando iis7 en x64, pero estoy ejecutando .net 3.5 sp1 que es más nuevo que esas revisiones – rizzle

+0

¿Y ha intentado establecer el valor de registro de VerificationCompatibility en 1 como se menciona allí? Como nota al margen, stackoverflow.com tiene una respuesta similar cuando incluyes% 3f en una url. –

+0

sí, parece que a stackoverflow no le gusta un% 3f en una url, pero no está en fase por una? dentro de la url –

Cuestiones relacionadas