Редиректы на сайте можно делать по разному, в этой статье как их сделать через .htaccess.
-
редирект с www на без www
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]
-
с без www на www
RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule ^ http%{ENV:protossl}://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
-
простой 301 редирект с одной страницы на другую
Redirect 301 /старый_урл_без_домена http://www.новый_урл_в_полном_виде.ru/
-
убрать слеш из окончания урлов
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} ^(.+)/$ RewriteRule ^(.+)/$ /$1 [R=301,L]
-
редирект для страниц у которых в урле есть знак вопроса (index.php?id_article=25)
RewriteCond %{QUERY_STRING} ^id_article=25$ RewriteRule ^index\.php$ http://www.адрес_куда_делать_редирект/? [L,R=301]
где id_article=25 уникальный идентификатор страницы
-
если в урле знак вопроса идет сразу после слеша (blog/?id_article=25), то делать так:
RewriteCond %{QUERY_STRING} ^id_article=25 RewriteRule (.*) http://www.адрес_куда_делать_редирект/? [L,R=301]
где id_article=25 уникальный идентификатор страницы