Змінюй хід війни! Допомагай ЗСУ!

301 редирект

  • Автор теми Автор теми kefirek
  • Дата створення Дата створення
Статус: Офлайн
Реєстрація: 16.02.2008
Повідом.: 828
301 редирект

Помогите, плз, разобраться с 301 редиректом.

Есть сайт
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
Хочу сделать 301 редирект на
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

В файле .htaccess записано следущее:

Код:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^domain\.biz$ [NC]
RewriteRule ^(.*)$ https://domain.ua/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.domain\.biz$ [NC]
RewriteRule ^(.*)$ https://www.domain.ua/$1 [R=301,L]

В результате имеем не совсем корректный редирект. Проявляется он в следующем:
при заходе по, например, такой ссылке
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

происходит перебрасывание на главную страницу сайта. А нужно, чтобы было на
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.



В чем ошибка?
 
RewriteRule есть где-то еще помимо .htaccess
 
А как прописать 301 редирект постранично?
чтобы по ссылке
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

происходил переход на
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
 
А как прописать 301 редирект постранично?
чтобы по ссылке
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

происходил переход на
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

У тебя все правильно прописано, просто где-то в конфиге апача есть правило вроде такого:

RewriteRule .* /
 
посмтори монитором не присходит ли редирект дважды.
вполне возможно, что перебрасывает на домашнюю страницу уже после перехода.
 
Вот .htaccess полностью.

#AddHandler application/x-httpd-php4 .php

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^((.*\.(html?|php))|((.+\/)?[^\.\/]*))$ index.php?%{QUERY_STRING} [L]

#ErrorDocument 404 /error404.php

#php_value upload_max_filesize 3M
#php_value post_max_size 3M


RewriteCond %{HTTP_HOST} ^domain\.biz$ [NC]
RewriteRule ^(.*)$
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
[R=301,L]
RewriteCond %{HTTP_HOST} ^www\.domain\.biz$ [NC]
RewriteRule ^(.*)$
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
[R=301,L]

Все ли корректно? Посмотрите, плз.
 
RewriteRule ^((.*\.(html?|php))|((.+\/)?[^\.\/]*))$ index.php?%{QUERY_STRING} [L]

вот же она, та самая лишняя строчка.

Вообще там нужно оставить только это:

Код:
RewriteEngine On

RewriteCond %{HTTP_HOST} ^domain\.biz$ [NC]
RewriteRule ^(.*)$ https://domain.ua/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.domain\.biz$ [NC]
RewriteRule ^(.*)$ https://www.domain.ua/$1 [R=301,L]
 
Нифига. В таком случае грузится только стартовая страница и перестают работать все остальные. По ссылка типа
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
выдается ошибка 404.

Думаю, может дополнить блок

RewriteCond %{HTTP_HOST} ^domain\.biz$ [NC]
RewriteRule ^(.*)$
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
[R=301,L]
RewriteCond %{HTTP_HOST} ^www\.domain\.biz$ [NC]
RewriteRule ^(.*)$
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
[R=301,L]

прописыванием редиректа вручную для полутора десятков наиболее популярных страниц, а остальные переиндексируются поисковиками сами.

Подскажите, как корректно сделать постраничный 301 редирект, чтобы по ссылке
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.

происходил переход на
⚠ Тільки зареєстровані користувачі бачать весь контент та не бачать рекламу.
 
Нифига. В таком случае грузится только стартовая страница и перестают работать все остальные.

Значит не срабатывает RewriteCond

Код:
RewriteEngine On
RewriteRule ^(.*)$ https://www.domain.ua/$1 [R=301,L]

Отредиректит все на ввв и ок
 
Назад
Зверху Знизу