Pregunta

Lo que quiero:

  

Para redireccionamiento 301 a /file_new.pdf   / NUEVO.pdf archivo (20% aka espacio entre   archivo y nuevo)

Soy consciente de que:

  • puedo confiar en RewriteRule 301 que utiliza mod_rewrite, utilizando una solución de este hilo: @ mod_rewrite con espacios en las URL
  • Puedo cambiar el nombre del archivo para que no incluya espacios y reemplazarlos con guiones / guiones

Sin embargo, yo personalmente estoy curioso en cuanto a cómo se podría hacer esto. Esto es lo que tengo hasta ahora:

Redirect 301 /file_new.pdf http://sitename.com/file\ new.pdf

El analizador de archivos conf lanza un error cuando invoco la configtest:

  

redirección toma dos o tres argumentos,   un estado opcional, a continuación, a documentar   ser redirigido y la URL de destino

Editar Al parecer, el mod_rewrite ni redireccionamiento 301 métodos están trabajando para mí, posiblemente debido a que por cualquier razón no se aplican debido a que el archivo existe en realidad en esa ubicación.

<VirtualHost *:80>
DocumentRoot /www/sitename_com
ServerName site.local
Options -MultiViews

RewriteEngine on
Redirect 301 /pdf/file_new.pdf http://site.local/pdf/file%20new.pdf
RewriteRule ^/pdf/file_new.pdf http://site.local/pdf/file\ new.pdf
RewriteLog "/www/rewrite.log"
</VirtualHost>

En rewrite.log, intenta hacer coincidir el patrón a cada solicitud URI / http respectiva .. Creo que algo está tomando el control incluso antes de que llegue a la mod_alias / mod_rewrite cosas.

Así que para resumir, que va directamente a file_new.pdf en el navegador y no lo hace 301. Estoy seguro de que alias y rewrite están habilitadas. Mi versión de Apache es de 2.2.

¿Fue útil?

Solución

la Redirect es en realidad parte de mod_alias, no mod_rewrite. Me alegra que la 20% trabajaba y también se puede utilizar comillas para decirle a Apache que el camino que incluye el espacio es la URL para redirigir a y no dos elementos separados:

Redirect 301 /pdf/file_new.pdf "http://site.local/pdf/file new.pdf"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top