www редирект для html-сайта

R3
На сайте с 28.06.2013
Offline
54
735

Приветствую.

Планирую сделать небольшой сайт без CMS, на голом HTML.

Вопрос:

Как настроить все нужные редиректы?

www.site.ru > site.ru

site.ru/index.html > site.ru

site.ru/page/ > site.ru/page

Пытался вставить .htaccess с рабочего сайта на WP — без толку.

Есть какие-то идеи?

ppcbar.com (https://ppcbar.com/)
Alex Klo
На сайте с 15.06.2006
Offline
304
#1

Ставьте в .htaccess:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.site\.ru$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1 [R=301,L]
Проверка и мониторинг позиций сайта ( http://www.topvisor.ru/?inv=1520 ) Продвигаю сайты http://climat-nw.ru/conditioner-installation/ http://www.aircom-spb.ru/service/montaj/
R3
На сайте с 28.06.2013
Offline
54
#2

попробовал — не дает эффекта

Rulin
На сайте с 16.01.2008
Offline
143
#3
rg36:
попробовал — не дает эффекта

Что значит не дает эффекта? Не происходит редиректа с www.site.ru на site.ru?

Вебсервер у вас какой? Случаем не на narod.ru запускаете свой сайт?

Вот правила для всех ваших примеров: (актуально для вебсервера Apache)


RewriteEngine On

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

RewriteCond %{REQUEST_URI} ^(.*)index\.html$
RewriteRule .* %1 [R=301,L]

RewriteCond %{REQUEST_URI} ^(.*)\/$
RewriteRule .* %1 [R=301,L]

Bitcoin Debit Card
nikonlay
На сайте с 11.12.2006
Offline
191
#4

Попробовал сейчас код, который дал Alex Klo на сайте на чистом html (хостинг по тарифу 101 - то есть сервер в принципе не поддерживает php). Там даже файла .htaccess не было - я его только что создал в блокноте и закинул туда.

И все прекрасно работает.

Так что, rg36, это у вас с сервером что-то не то, а с кодом все ок.

Мощные фонари и телескоп: https://market.yandex.ru/business/79203856
R3
На сайте с 28.06.2013
Offline
54
#5
Rulin:
Что значит не дает эффекта? Не происходит редиректа с www.site.ru на site.ru?
Вебсервер у вас какой? Случаем не на narod.ru запускаете свой сайт?

Вот правила для всех ваших примеров: (актуально для вебсервера Apache)


RewriteEngine On

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

RewriteCond %{REQUEST_URI} ^(.*)index\.html$
RewriteRule .* %1 [R=301,L]

RewriteCond %{REQUEST_URI} ^(.*)\/$
RewriteRule .* %1 [R=301,L]

Только-что попробовал — никакой склейки нету. По крайней мере site.ru/index.html доступен и по www.site.ru/index.html.

Корень сайта редиректит как-то криво, добавляя home/название-хостинг-аккаунта/site.ru/www

Написал в техподдержку хостера, может помогут.

И да, сайт не на народ.ру.

VE
На сайте с 17.08.2006
Offline
76
#6

По п.2

В сам HTML

<link rel="canonical" href="http://site.ru/">

В .htaccess

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html [NC]

RewriteRule ^index\.html$ http://%{HTTP_HOST}/ [R=301,L]

OR

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html [NC]

RewriteRule ^index\.html$ http://site.ru/ [R=301,L]

R3
На сайте с 28.06.2013
Offline
54
#7

Все работает. Все замечательно.

Мой файл:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/

RewriteRule ^index\.html$ http://DOMAIN.com.ua/ [R=301,L]

Редирект "www.domain/.." > "domain/.." реализован через панель управления хостингом.

Спасибо всем, кто помогал.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий