RewriteCond не останавливается в конце .. / пример будет работать ... но пример / anotherlink не - PullRequest
0 голосов
/ 25 августа 2010

для некоторых это может показаться легким делом, но я пытаюсь указать RewriteCond в файле .htaccess, и у меня возникла ошибка.

Вот что у меня есть:

RewriteCond %{REQUEST_FILENAME} employee   [NC]
RewriteRule ^(.*)$ /resources/employee [L,R=301]

будет перенаправлять нормально ... но если я включу какие-либо другие правила, которые включают в себя «работника», как это:

RewriteCond %{REQUEST_FILENAME} employee/another   [NC]
RewriteRule ^(.*)$ resources/employee/another [L,R=301] 

Перенаправляет меня на первое правило: / resources / employee

Я перепробовал много вариантов, но не повезло. Есть идеи?

Ответы [ 2 ]

1 голос
/ 25 августа 2010
RewriteCond %{REQUEST_FILENAME} employee   [NC]

будет соответствовать чему-либо с сотрудником, попробуйте использовать некоторую привязку, например, начало и конец имени файла или подобное:

# Match everything that starts with /employee, might be followed by a slash and then ends
RewriteCond %{REQUEST_FILENAME} ^/employee/?$   [NC]
1 голос
/ 25 августа 2010

RewriteCond использует регулярное выражение и ищет его в вашем значении. Чтобы убедиться, что он соответствует только целой строке, используйте ^ и $:

RewriteCond %{REQUEST_FILENAME} ^employee$ [NC]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...