Pregunta

Otra cuestión a raíz de este hilo . El artículo único resto que no puedo resolver es que hay un listado para una carpeta ahora inexistente '/ equipo /', pero si añado esto en mi archivo .htaccess, se rompe todas las demás entradas .htaccess para los archivos de esa carpeta, es decir,

redirect 301 /team/ /team.html
redirect 301 /team/joe_bloggs.htm /team.html
redirect 301 /team/joe_bloggs.html /team.html
redirect 301 /team/bill_smith.htm /team.html
redirect 301 /team/bill_smith.html /team.html

Si a continuación, intenta visitar /team/joe_bloggs.htm, me lleva a

/team.html/joe_bloggs.htm

Si puedo solucionar este problema, puede ayudar a entender cómo resolver mi pregunta original y reducir la enorme lista de páginas de redirección en mi archivo .htaccess, por lo que cualquier ayuda agradecido recibió.

¿Fue útil?

Solución

Es necesario cambiar el orden, y poner "redirect 301 /team/ /team.html" al final. Se lee una línea a otra y si encuentra algo que encaja, lo reemplaza.

Por otra parte, creo que es necesario para aprender a sumar, y los personajes ^ $. ^ Significa, la expresión debe comenzar, y $ significa la expresión debe terminar. Por lo tanto, significa ^/team/$, debe ser exactamente / equipo / y no lo puedo /team/joe_bloggs.htm partido

Otros consejos

El Redirect Directiva trabaja en prefijos de ruta. Y en este caso el prefijo de ruta utiliza en sus primera directiva partidos (/team/) y el resto de la ruta se añade a la nueva ruta URL.

  

[...] cualquier solicitud que comienza con URL-Path devolverá una solicitud de redirección al cliente en la ubicación del objetivo URL . información de la ruta adicional más allá de la emparejado URL-Path se añadirá a la diana URL .

Trate RedirectMatch lugar:

RedirectMatch 301 ^/team/ /team.html
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top