Я пытаюсь настроить перенаправление htaccess с запросом так:
Redirect 301 /?page=services/branddevelopment /brand-development?
или это:
RewriteCond %{QUERY_STRING} ^page=services/branddevelopment$ RewriteRule ^(.*)$ http://domainname/ [R=301,L]
Я что-то пропустил здесь? Или неправильный синтаксис? Он не перенаправляет так, как я хочу. Благодаря!
Я что-то пропустил здесь? Или неправильный синтаксис? Он не перенаправляет так, как я хочу. Благодаря!
Вы действительно мало объяснили, что происходит, и результат, который вы получаете, чтобы кто-то мог понять, почему вы получаете результат, который вы получаете.
Однако в общем случае вы не можете использовать mod_alias
(Redirect) для перенаправления строки запроса, которая не будет работать.
Вы должны использовать mod_rewrite
, который кажется, что вы пытались сделать. Однако вы не хотите переносить строку запроса с помощью перенаправления, поэтому вам нужно использовать ?
в URL перезаписи.
Поэтому, если у вас есть такой URL-адрес
http://www.example.com/?page=services/branddevelopment
Тогда ваше правило будет
RewriteCond %{QUERY_STRING} ^page=services/branddevelopment$ RewriteRule ^(.*)$ http://domain.com/? [R=301,L]