301 редирект

Как настроить 301 редирект в joomla 3

301 редирект в htaccess

Редирект 301 с www на без www

  Если Вы задались подобными вопросами, то Вы занялись оптимизацией сайта. Делать редирект необходимо чем раньше, тем лучше для сайта.

Для чего нужен этот 301 редирект в htaccess?

Ответ прост:

  Если сайты www.inter-net.pro и inter-net.pro работают по отдельности без редиректов. Эти две копии могут «склеится» поисковыми системами, что негативно скажется на поисковой оптимизации.


  Настраивается 301 редирект в joomla 3 через файл .htaccess

  Где найти файл .htaccess? Он расположен в корне сайта в папке www.

  Если у вас такого файла, то рекомендую вам убрать index.php в url адресе сайта. Именно тогда мы переименовали файл htaccess.txt в файл .htaccess Рекомендую вам сначала удалить index.php и сразу же сделать 301 редирект.


Настраиваем 301 редирект htaccess

  У меня все сайты без www, поэтому я сразу расскажу как сделать редирект с версии с www на версию без.

Открываем файл .htaccess и находим в нём следующую строку:

RewriteEngine On    (примерно 27 строчка)

и сразу же под этой строкой добавляем ве строчки кода редиректа, чтоб получилось:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R,L]

 

  Сохраняем файл и заливаем его обратно в корень сайта. Сразу же проверьте работоспособность редиректа на своём сайте. Для этого наберите в адресной строке URL вашего сайта с WWW впереди (не забудьте точку после www) и попробуйте зайти на сайт. Автоматически должно срабатывать перенаправление на версию без www. Если всё сработало - значит редирект сделан правильно.


  Ну и для себя добавлю запись с разными кодами, чтоб при личной надобности быстро решать задачи в правке файла .htaccess

Создание короткого адреса карты сайта Xmap

Код позволяет создать для карты сайта урл-адрес вида sitemap.xml и в таком виде добавлять его в сервисы вебмастера поисковиков

RewriteCond %{REQUEST_URI} ^/sitemap.xml
RewriteRule .* /index.php?option=com_xmap&id=1&view=xml&format=html [L]

На сайте самого Xmap говорится о другом варианте

RewriteCond %{REQUEST_URI} ^/sitemap.xml
RewriteRule .* /index.php?option=com_xmap&id=1&view=xml

но он увы часто вызывает 500-ую ошибку сервера

 

Редирект URL с www на URL без- www

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R,L]

 

Редирект URL без-www на URL с www

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

Редирект страниц одного домена на другой

RewriteCond %{HTTP_HOST} ^(www\.)?мойсайт\.ru
RewriteRule ^(.*)$ http://сайт.ру/$1 [R=301,L]

Данный код перенаправляет все страницы одного домена на другой домен.

Редирект со страниц без суффикса .html на страницы с .html

Редирект будет полезен, если вдруг решили добавить к страницам окончание в виде .html Т.е. стандартный роутер (преобразователь URL) не делает автоматических редиректов при добавлении суффиксов, то сделаем редиректы самостоятельно:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)$ /$1.html [R=301,L]

 

Удаление дубля главной страницы - index.php из URL

Последние версии SEF-компонентов (sh404SEF и MijoSEF) не делают автоматических редиректов с _http://inter-net.pro/index.php на корень сайта _http://inter-net.pro/, поэтому добавляем код

RewriteCond %{THE_REQUEST} !^POST
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteCond %{SERVER_PORT}>s ^(443>(s)|[0-9]+>s)$
RewriteRule ^index\.php$ http%2://inter-net.pro/ [R=301,L]

inter-net.pro естественно меняем на свой домен

Все другие конструкции могу приводить к проблемам с POST-запросами напрямую через файл index.php (вместо выполнения получим редирект на корень сайта). Поэтому для редиректа обязательно исключение запросов POST.

 

Запрет листинга каталогов

Стандартно, при прямом доступе к каталогу с отсутствующим пустым файлом index.html (index.htm), открывается список содержимого каталога. Следующие директивы помогают избежать этого.

IndexIgnore *
Options -Indexes

 

Комментарии  

вася
# вася 21.02.2017 16:23
и хули мне тут должно быть понятно как чайнику?

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R,L]

куда какой урл вписывать? пример нельзя было дописать или сам с чужого сайта спёр и не петришь?
Ответить | Ответить с цитатой | Цитировать
Super User
# Super User 21.02.2017 22:23
Ты не чайник, а баран если читать не умеешь. Написано - это уже готовый код и даже расписано что и куда, а урл себе на лбу впиши, может тогда чего нибудь "напетришь"
;)
Ответить | Ответить с цитатой | Цитировать
Валера
# Валера 02.04.2017 16:05
Добрый день администратор. Подскажи, если сможешь, такая проблема возникла с редиректом с wwvv на без www . Сайт на протоколе https, вставляю строки:
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R,L]
в файле robot.txt прописываю строку HOST и указываю путь без WWW. А сайт всё равно не перенаправляет на без WWW .Открывается и по адресу с WWW и без WWW, к сожалению без направления. ПОдскажи пожалуйста, где я совершаю ошибку.
P.S. За складчину cmsheaven спасибо за раскрытие этих жуликов, я сам на них погорел, говнюки ещё те
Ответить | Ответить с цитатой | Цитировать
Super User
# Super User 05.04.2017 10:40
Файл robot.txt к перенаправлению не имеет никакого отношения. Это файл для индексации сайта поисковыми роботами. В нём прописывается вид домена который будет отображаться в результатах поиска поисковых систем.
А перенапревление с на без wwvv без всяких заморочек, должно быть реализовано в настройках сайта на хостинге. Достаточно поставить птичку и сохраниться.

А если у вас хостер отстал от прогресса, попробуйте в коде прописать https, чтобы получилось:

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R,L]
Ответить | Ответить с цитатой | Цитировать

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

Для того чтобы ваши комментарии появлялись мгновенно (без модерации), авторизируйтесь или пройдите регистрацию на сайте. Комментарии добавленные анонимно добавляются только после модерации, из-за большого количества спама.

Защитный код
Обновить