Как выбрать целевой файл с% 20 в .htaccess? - PullRequest
1 голос
/ 18 сентября 2010

Вот мой .htaccess:

...
rewriterule file%20name.htm http://mysite.com/new_name.htm#anchor [r=301,nc,ne]
...

Он не перенаправлен, и я считаю, что это потому, что он не нацелен на файл с% 20 в имени.Что касается флагов, я использовал ne, чтобы не переписывать часть #anchor перенаправления.

Кроме того, флаг "nu" ломает мой файл, и я получаю внутреннюю ошибку server 500.вы.

Ответы [ 2 ]

2 голосов
/ 18 сентября 2010

Когда вызывается mod_rewrite, путь уже был декодирован как часть обработки запросов Apache.Итак, если вы хотите проверить пробел, вы можете сделать это буквально:

RewriteRule file\ name\.html http://example.com/new_name.htm#anchor [R=301,NC,NE,L]

Флаг NU не существует , поэтому вы получаете внутренний серверошибка при попытке использовать его.

0 голосов
/ 18 сентября 2010

Не самый лучший ответ, и его можно использовать только в определенных случаях, но я изменил

file%20name.htm

до

file.*

, поэтому оно будет соответствовать любому имени файла, начинающемуся с «file», независимо от пробелов и специальных символов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...