Quizás esta respuesta es un poco tarde pero que tenía el mismo problema con la respuesta 301 en la solicitud ajax. La solución era muy simple: regla de reescritura
Apache es algo como esto:
RewriteRule ^([^/]\w+)/?$ index.php?%{QUERY_STRING} [L,E=MODULE:$1]
Su XHR-solicitud de URL se ve calle detrás de esta manera:
/this/is/a/canonical/url + '?param=1¶m=2...'
Esto llevará a la 301 movido permanentemente si no utiliza una llamada de archivo directa (fi * .php) y reescribe a la URL canónica (parece una ruta de directorio sin fi * .php) en su lugar.
Para resolver este problema sólo tiene que añadir un/a su XHR-Request-URL como esta:
/this/is/a/canonical/url + '/' + '?param=1¶m=2...'
Tal vez esto ayude a alguien.
OK, así que jQuery no sigue redirecciones, ya veo. Gracias. –
Um, no. XHR seguirá de forma transparente los redireccionamientos. –
No en todos los casos. Tengo una configuración de redirección 301 y FF no los sigue. Chrome lo hace, sin embargo. – threejeez