Редирект htaccess на другой сайт: Редирект через .htaccess | REG.RU

Как сделать 301 редирект страницы в htaccess

Статьи про сайтостроение

Для начала необходимо создать файл с названием .htaccess. Для этого создаем обычный текстовый документ — новый текстовый документ.txt и переименовываем его в .htaccess, т.е. ставим точку затем пишем htaccess, а расширение txt удаляем. Система спросит — вы действительно хотите поменять расширение, соглашаетесь. 

Затем созданный файл открываем обычным текстовым редактором и копируем туда код, который описан ниже.

Основные функции 301 редиректа и зачем он нужен?

Ситуация: страница сайта была удалена или переехала на новый адрес.
Минусы ситуации: страница становится не доступной и выдает ошибку 404. Если данная страница имела топовые позиции и посещаемость, то с ее исчезновением позиции по запросу, за которой отвечала страница пропадут и трафик на сайт снизится.

Чтобы этого не произошло, при смене адреса страницы нужно указать поисковикам новый адрес данной страницы, с помощью 301 редиректа.

В таком случае, вы сохраните позиции сайта. Помимо проблем с поисковым трафиком отсутствие редиректа с одной страницы на другую повлечет за собой негативные последствия для сайта в целом, так как поисковые системы не одобряют пропажу страниц.

Пример настройки редиректа:
Redirect 301 /старая_ссылка домен/новая_ссылка

Старый адрес страницы — указываем адрес ссылки без домена, допустим полный адрес ссылки домен/старая_ссылка, то мы указываем просто старая_ссылка.

домен/новая_ссылка — новый адрес страницы. Обратите внимание, что между 301 и / стоит пробел, так же, как и между старая_ссылка и домен/новая_ссылка.

Этот способ подойдет для переадресации, как с одной страницы сайта на другую, так и с домена на домен, т.е. на другой сайт.

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

Пример второго способа редиректа:
RewriteCond %{QUERY_STRING} ^старая_ссылка$
RewriteRule ^новая_ссылка$ домен/новая_ссылка? [R=301,L]

Старый адрес страницы, так же указываем без домена и знака ?, если полный адрес страницы домен/старая_ссылка
домен/новая_ссылка — новый адрес страницы. (.*)$ http://site.ru/ [L,R=301]

Вместо site.ru — указываем адрес сайта, на который будет происходить переадресация.

Видео инструкция

apache — перенаправить один URL-адрес на другой URL-адрес с помощью .htaccess

спросил

Изменено 1 год, 10 месяцев назад

Просмотрено 70 тысяч раз

Поскольку я пытаюсь перенаправить один полный URL-адрес

 http://www.domain-name.com/download/?page=download
 

На этот URL

 http://www.domain-name.com/download/show
 

Чтобы это работало, я добавил этот код

 rewriterule http://www. domain.com/download/?page=download(.*)$ http://www.domain.com/download/show$1 [ г=301,нк]
 

Но это не работает, и вместо этого он говорит, что URL-адрес, который я запрашиваю, говорит «Запрещено».

Кто-нибудь может дать какое-нибудь решение для этого.

  • апач
  • .htaccess

1

Перенаправление одного URL-адреса на другой URL-адрес с помощью файла htaccess:

 Перенаправление 301 /en/php/project.html http://www.example.org/newpage.html
 

RewriteRule не включает строку запроса и не включает http-хост. Кроме того, первый аргумент — это шаблон регулярного выражения. Без http-хоста вам будет соответствовать либо download/page=download(etc) , либо downloadpage=download(etc) .

Вам понадобятся 2 правила. Тот, который перенаправляет уродливый URL-адрес на красивый URL-адрес. Одно правило должно переписать хороший URL-адрес на реальный рабочий URL-адрес: 9скачать/показать/?$ скачать/?page=download [QSA,END]

Второе правило использует флаг QSA, что означает, что исходная строка запроса будет добавлена ​​к строке запроса в модуле перезаписи. Флаг END останавливает любую перезапись, так как L-флаг не делает этого в контексте .htaccess. END доступен только начиная с Apache 2.3.9 и вызовет внутреннюю ошибку сервера, если используется в более ранней версии. Обратите внимание, что вам, вероятно, придется изменить второе правило, чтобы оно указывало на реальный файл.

Документацию можно найти здесь.

Редактировать: Обратите внимание, что вы НИКОГДА не должны тестировать правила htaccess с ПОСТОЯННЫМ перенаправлением. Если вы допустите ошибку, браузер запомнит эту ошибку! Преобразовывайте временные перенаправления в постоянные перенаправления только в том случае, если все работает так, как вы ожидаете.

6

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

 Перенаправление /download/?page=download http://www.domain-name.com/download/show
 

Использовать RewriteEngine :

 RewriteEngine включен
Перенаправление 301 http://www. domain-name.com/download/?page=download http://www.domain-name.com/download/show
 

0

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

apache — перенаправить определенный URL-адрес на другой URL-адрес с помощью .

htaccess

спросил

7 лет, 7 месяцев назад

Изменено 2 года назад

Просмотрено 63к раз

Я хочу иметь псевдоним и перенаправить URL-адрес tz433.tld/jobs/ на страницу tz433.tld/about-us/jobs/ .

Это то, что я уже пробовал; не получилось: 9www\.tz433\.tld/jobs/$ RewriteRule (.*) http://tz433.tld/about-us/jobs.html [R=301,L]

Проблема в том, что в этом корневом пути есть несколько доменов, потому что это мультисайтовая установка typo3. Так что что-то вроде «перенаправить /jobs на /about-us/jobs » не работает, потому что это должно происходить только для определенного домена (tz433).

Следующая конкретная вещь — www.tz433.tld автоматически перенаправляет на tz433.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *