Перейти к содержанию
phoen

Не получается редирект в .htaccess

Рекомендуемые сообщения

Не получается сделать редирект в .htaccess

Необходимо с страницы https://site.ru/noutbuk/acer редирект https://site.ru/noutbuk/noutbuk-acer

 

Пробовал

 

RewriteRule ^/noutbuk/acer$ https://site.ru/noutbuk/noutbuk-acer [R=301,L]

Не помогло

 

Redirect 301 /noutbuk/acer https://site.ru/noutbuk/noutbuk-acer
В этом случае - Firefox определил, что сервер перенаправляет запрос на этот адрес таким образом, что он никогда не завершится.
Эта проблема может возникать при отключении или запрещении принятия кук.
    
RewriteRule ^noutbuk/acer /noutbuk/noutbuk-acer$1 [R=301,L]

Не помогло

 

Какие еще варианты?:(

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 минуты назад, phoen сказал:

Какие еще варианты?:(

Вариант только один - не пихать редиректы куда попало.

Подозреваю, что вы свой редирект вписали где-нибудь в конец файла, а все редиректы должны быть перед блоком:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

 

  • +1 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
19 часов назад, Dotrox сказал:

Вариант только один - не пихать редиректы куда попало.

Подозреваю, что вы свой редирект вписали где-нибудь в конец файла, а все редиректы должны быть перед блоком:


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

 

 

спасибо) помогло) хоть сперва ставил после RewriteBase / и не работало, потом в самом конце)

так перед блоком заработало:

RewriteRule ^noutbuk/acer /noutbuk/noutbuk-acer$1 [R=301,L]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 часа назад, phoen сказал:

так перед блоком заработало:

RewriteRule ^noutbuk/acer /noutbuk/noutbuk-acer$1 [R=301,L]

Это не совсем неправильный редирект.

$1 - это переменная, которая содержит в себе значение выдранное регуляркой в изначальной ссылке, но у вас там нет регулярок для выдирания чего-либо.

Если вам нужно перенаправить одну конкретную страницу на другую страницу, то ни регулярки, ни переменные не нужны.

 

 

Кстати, директиву Redirect, которую вы пытались использовать вначале, вообще лучше не использовать - за неё отвечает другой модуль Apache и это может приводить к непредсказуемым последствиям (в чём вы уже успели убедиться).

Изменено пользователем Dotrox
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, Dotrox сказал:

Это не совсем неправильный редирект.

$1 - это переменная, которая содержит в себе значение выдранное регуляркой в изначальной ссылке, но у вас там нет регулярок.

Если вам нужно перенаправить одну конкретную страницу на другую страницу, то ни регулярки, ни переменные не нужны.

 

 

Кстати, директиву Redirect, которую вы пытались использовать вначале, вообще лучше не использовать - за неё отвечает другой модуль Apache и это может приводить к непредсказуемым последствиям (в чём вы уже успели убедиться).

 

спасибо за помощь

последний раз пробовал через

Redirect 301 /nettop/asus/ https://site.ru/nettop/nettop-asus

3-4 редиректа заработало, думал настроил, при проверке остальных 10 - оказалась, что нет.

 

теперь понял

RewriteRule ^nettop/asus /nettop/nettop-asus [R=301,L]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.