Question

Ce que je veux:

  

Pour 301 redirect /file_new.pdf à   / Fichier new.pdf (% 20 aka espace entre   fichier et nouveau)

Je suis conscient du fait que:

  • Je peux compter sur RewriteRule 301 qui utilise mod_rewrite, en utilisant une solution de ce fil: @ mod_rewrite avec des espaces dans les urls
  • Je peux renommer le fichier pour inclure pas les espaces et les remplacer par des tirets / underscores

Cependant, je suis personnellement curieux de savoir comment on pourrait le faire. Voici ce que j'ai à ce jour:

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

L'analyseur de fichier de configuration renvoie une erreur quand je l'invoque configtest:

  

Redirect prend deux ou trois arguments,   un statut en option, documenter ensuite   être redirigé et URL de destination

Modifier Apparemment, le mod_rewrite, ni Rediriger 301 méthodes travaillent pour moi, peut-être parce que, pour une raison quelconque, ils ne sont pas parce que le fichier postulent existe réellement dans cet endroit.

<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>

Dans rewrite.log, il tente de faire correspondre le modèle à chaque demande uri / http respectifs .. Je pense que quelque chose est de prendre le contrôle avant qu'il ne soit même au mod_alias / stuff mod_rewrite.

Donc, pour résumer, il va directement à file_new.pdf dans le navigateur et ne 301. Je suis positif que alias et rewrite sont activés. Ma version est apache 2.2.

Était-ce utile?

La solution

Redirect est en fait une partie de mod_alias, non mod_rewrite. Je suis heureux que le 20% a travaillé et vous pouvez également utiliser des guillemets pour dire apache que le chemin qui inclut l'espace est l'URL de redirection et non pas deux éléments distincts:

Redirect 301 /pdf/file_new.pdf "http://site.local/pdf/file new.pdf"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top