Настройка редиректа во внутренних страницах сайта.
Страницы: 1
Настройка редиректа во внутренних страницах сайта.
Всем доброго времени суток, ув. форумчане. Кто сможет объяснить как правильно настроить редирект во внутренних страницах сайта? Существует проблема на русскоязычном домене (статистический сайт). Адресная строка оказалась чувствительна к регистру, как бы сделать чтобы на страницу введенную капсом, происходил редирект на необходимую страницу? объясню на примере:
есть страница: 
стеклоизеркало.рф/zerkala.html
но, если мы введем капсом, то на данную страницу мы уже не попадем:
СТЕКЛОИЗЕРКАЛО.РФ/ZERKALA.HTML

Нашел только такое решение, вписывать на каждую страницу отдельную строку:
Redirect 301 /ZERKALA.HTML https://мойсайт/zerkala.html
Но это будет достаточно громоздко, но и проблема с РаЗлИчНыМ регистром также не будет решена... 

Соответственно на сайте около 10-15 страниц, нужно грамотно указать условия редиректа при различном регистре, я так понимаю, вписывать все нужно в .htaccess - но можно там либо все страницы расписывать, или написать пару строк и готово? Кто шарит?)
Изменено: Аркадий Мамонтов - 11 Ноября 2016 23:44

Бесплатная контекстная реклама

Можно решить через PHP (index.php сразу после <?php или <?)

Код
if ( $_SERVER['REQUEST_URI'] != strtolower( $_SERVER['REQUEST_URI']) ) {
    header('Location: http://'.$_SERVER['HTTP_HOST'] . 
      strtolower($_SERVER['REQUEST_URI']), true, 301);
    exit();
}

Или через .htaccess


Код
RewriteEngine On
RewriteBase /

# If there are caps, set HASCAPS to true and skip next rule
RewriteRule [A-Z] - [E=HASCAPS:TRUE,S=1]

# Skip this entire section if no uppercase letters in requested URL
RewriteRule ![A-Z] - [S=28]

# Replace single occurance of CAP with cap, then process next Rule.
RewriteRule ^([^A]*)A(.*)$ $1a$2
RewriteRule ^([^B]*)B(.*)$ $1b$2
RewriteRule ^([^C]*)C(.*)$ $1c$2
RewriteRule ^([^D]*)D(.*)$ $1d$2
RewriteRule ^([^E]*)E(.*)$ $1e$2
RewriteRule ^([^F]*)F(.*)$ $1f$2
RewriteRule ^([^G]*)G(.*)$ $1g$2
RewriteRule ^([^H]*)H(.*)$ $1h$2
RewriteRule ^([^I]*)I(.*)$ $1i$2
RewriteRule ^([^J]*)J(.*)$ $1j$2
RewriteRule ^([^K]*)K(.*)$ $1k$2
RewriteRule ^([^L]*)L(.*)$ $1l$2
RewriteRule ^([^M]*)M(.*)$ $1m$2
RewriteRule ^([^N]*)N(.*)$ $1n$2
RewriteRule ^([^O]*)O(.*)$ $1o$2
RewriteRule ^([^P]*)P(.*)$ $1p$2
RewriteRule ^([^Q]*)Q(.*)$ $1q$2
RewriteRule ^([^R]*)R(.*)$ $1r$2
RewriteRule ^([^S]*)S(.*)$ $1s$2
RewriteRule ^([^T]*)T(.*)$ $1t$2
RewriteRule ^([^U]*)U(.*)$ $1u$2
RewriteRule ^([^V]*)V(.*)$ $1v$2
RewriteRule ^([^W]*)W(.*)$ $1w$2
RewriteRule ^([^X]*)X(.*)$ $1x$2
RewriteRule ^([^Y]*)Y(.*)$ $1y$2
RewriteRule ^([^Z]*)Z(.*)$ $1z$2

# If there are any uppercase letters, restart at very first RewriteRule in file.
RewriteRule [A-Z] - [N]

RewriteCond %{ENV:HASCAPS} TRUE
RewriteRule ^/?(.*) /$1 [R=301,L]
В сети есть довольно много способов, копирую один из:

Цитата
Это делается через RewriteMap, но это не лучший вариант по нагрузке, т.к. проверяется каждый запрос. Лучший вариант - это прописать canonical URL. Имена файлов и директорий сами по себе могут иметь разный регистр, поэтому нереально. Пропишите в странице <link rel="canonical" href="http://site.ru/правильный_url" />
Цитата
Местный Шерлок пишет:
Или через .htaccess
Большое спасибо за Ваш отзыв в данной теме, проблема решена!
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
01:45 АП ИКС 25.06.2019 
23:07 Продвижение в ТОП Яндекс. Мега быстро! 
18:48 Сайт неправильно отдаёт 404 
16:03 26 июня выдача 
16:00 Просел по запросам сильно. 
14:22 Упали позиции после склейки сайта 
13:18 Есть ли смысл продвигать неглавное зеркало 
23:19 Продаем трафик из соцсети МойМир Мэйл Ру - таргет по гео и полу 
23:14 Оформление групп Вконтакте, страниц Facebook, аккаунтов Twitter 
23:10 Дизайн для групп VK (Оформление) 
21:43 Продам сайт строительной тематики 
20:14 Продвижение петиций на сайте change.org 
20:11 Продвижение в социальных сетях: Вконтакте, Одноклассники, Твиттер, Instagram, YOUTUBE, Facebook, Мой мир. 
18:48 Услуги по подключению к Goods 
20:28 SEO продвижение сайтов в Яндекс, Google. Поднятие ИКС сайту, исправления ошибок, разработка стратегий 
16:10 Instagram трафик. Подработка не лето , и не только . СЛИВ своих материалов. 
14:36 Топик поднятия настроения. Приколы, картинки, видео и пр. 
05:02 Нужен совет 
20:27 Партнерка по торговле акциями КАНнАБИСа, получай кеш с любой сделки. 
20:26 Наши машинки 
18:36 Как восстановить удаленные файлы на компьютере?