Перенаправление Htaccess 301 с параметрами строки запроса - PullRequest
0 голосов
/ 12 ноября 2018

Это настолько элементарно, что вам нужно спросить, почему это так сложно реализовать.

Просто нужно перенаправить один URL-адрес на другой в том же домене, хотя URL-адрес содержит строку запроса aparams, хотя:

Я пытался:

RewriteRule ^article.php?section=exclusive&id=543 articles/view/4639 [R=301,L]

Я не могу найти страницу - перенаправление не происходит.У меня есть другие перенаправления в тот же htaccess, которые работают.Параметры строки запроса вызывают проблемы, и экранирование также не помогает.

Обратите внимание, что идентификаторы двух URL-адресов не совпадают, и поэтому я не хочу умного правила перезаписи, которое преобразуется из одногоURL к другому со строками запроса, сопоставленными с новыми параметрами.Я просто хочу быстрое и грязное сопоставление от А до Б.

ОБНОВЛЕНИЕ

Я пробовал это, он перенаправляет, но он добавляет мою старую строку запроса в конецновый URLКак я могу предотвратить это?

RewriteCond %{REQUEST_URI} ^/article\.php$
RewriteCond %{QUERY_STRING} ^section=exclusive
RewriteRule ^$ http://www.onlinegooner.com/articles/view/3000 [R=301,L]

URL-адрес ввода: mydomain.com/article.php?section=exclusive

1 Ответ

0 голосов
/ 12 ноября 2018

Вы можете использовать это правило:

RewriteCond %{QUERY_STRING} ^section=exclusive [NC]
RewriteRule ^article\.php$ /articles/view/3000? [R=301,L,NC]

? в цели удалит предыдущую строку запроса.

...