jkm

Рейтинг
120
Регистрация
20.02.2014

kminas,

RewriteCond %{HTTP_HOST} ^www\.ru\.new-site\.com$ [NC,OR]

RewriteCond %{HTTP_HOST} ^(www\.)?old-site\.com$ [NC]
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/.+$
RewriteCond %{REQUEST_URI} !^/\.well-known/pki-validation/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^(.*)$ http://ru.new-site.com/$1 [R=301,L]

SeoEscander,

RewriteCond %{HTTP_HOST} ^site\.ru$

RewriteRule ^$ http://newsite.ru/category [R=301,L]

RewriteCond %{HTTP_HOST} ^site\.ru$
RewriteRule ^(.*)$ http://newsite.ru/$1 [R=301,L]

webledi, на каких страницах и как именно не работает?

Просходит зацикливание и бесконечно редиректит на каких-то адресах или совсем ничего не происходит.

vital8, редирект нужно ставить в начало файла выше остальных правил сразу после RewriteEngine On

RewriteCond %{QUERY_STRING} ^instrukzia$

RewriteRule ^$ /lechenie/instrukzia.html? [R=301,L]

Или

RewriteCond %{THE_REQUEST} " /\?instrukzia "

RewriteRule ^ /lechenie/instrukzia.html? [R=301,L]

Ну технически возможность есть:

Header always set X-Robots-Tag "noindex" "expr= resp('X-Redirect-Agent') =~ /redirection/"

Но остается вопрос целесообразности делать это в htaccess, а не на стороне PHP.

Добавить always:

Header always set X-Robots-Tag

seo3_Kul,

RewriteRule ^(page)(\d+/)$ /$1-$2 [R=301,L]

Если апач версии >= 2.4

Header set X-Robots-Tag "noindex, nofollow" "expr= %{QUERY_STRING} =~ /printpage/"

В более старых версиях это можно реализовать с помощью mod_rewrite.

Header set X-Robots-Tag "noindex, nofollow" env=NOINDEXFOLLOW


RewriteEngine On

RewriteCond %{QUERY_STRING} printpage
RewriteRule ^ - [env=NOINDEXFOLLOW]

Но лучше проверку и добавление заголовков делать на стороне PHP header.

Rebroff, редирект page.htm нужно ставить выше правил для https и www.

RewriteRule ^(page|page2|page3)\.htm$ https://www.site.ru/ [R=301,L]


RewriteCond %{ENV:HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.site.ru/$1 [R=301,L]

Адреса с _1920 тоже попадают под это правило и для них нужно добавить исключение, чтобы не произошло зацикливание.

RewriteCond $2 !=1920

RewriteRule ^(img/\d+)_(\d+)\.(jpe?g|png|gif)$ /$1_1920.$3 [L]
Всего: 750