Частное решение проблемы со слешами в урлах

zenja
На сайте с 04.08.2010
Offline
139
846

Коллеги, нуждаюсь в консультации или минимальноплатной помощи по составлению валидного списка редиректов на сайте.

Ситуация:

сайт на джмуле

основное зеркало без ввв

чпу-урлы в индексе и в коде сайта без слешей на конце, кроме морды

проблемы:

1.склеивая урлы вида http://site.ru/url1/ -> http://site.ru/url1 в .htaccess не получается попасть в админку /administrator/ из-за зацикливающихся редиректов.

2.при прямом наборе адреса, доступны также следующие дубли http://site.ru/url1/index.php

вопросы:

1. как добавить в правило редиректа на страницы без слешей исключение для папки /administrator/ ?

2. нужно ли избавляться от дублей вида http://site.ru/url1/index.php?

3. морда сайта должна быть со слешем или можно без?

гуру регулярных выражений отзовитесь, пожалуйста:drink:

Быть минимально гордым, быть максимально честным! Услуги по продвижению Ваших сайтов: прозрачно, качественно, недорого (/ru/forum/779787)
texnicii
На сайте с 12.11.2009
Offline
77
#1

1. сюда

2. от всех дублей лучше избавиться

3. имхо пофиг

Улыбающийся подшипник на краю подводного плавания.
zenja
На сайте с 04.08.2010
Offline
139
#2

texnicii, ваш ответ малополезен

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

2. почему? у вас есть инструмент поиска ВСЕХ дублей?

3. главное слово "имхо", которое множит ценность этого совета на нуль

По сабжу: проблему решил самостоятельно, если кому будет интересно - стучитесь. В итоге полчилось так:

http://site.ru -> http://site.ru/

http://site.ru/url1/ -> http://site.ru/url1

http://site.ru/url1/index.php -> http://site.ru/url1

http://www.site.ru/url1/index.php -> http://site.ru/url1

Ну и ручные редиректы с /home , /component/frontpage

богоносец
На сайте с 30.01.2007
Offline
774
#3
zenja:
морда сайта должна быть со слешем или можно без?
texnicii:
имхо пофиг
zenja:
В итоге полчилось так:
http://site.ru -> http://site.ru/

А можно показать без слеша в индексе?

И как браузеру сделать

GET / HTTP/1.1

Host: forum.searchengines.ru

/

/

есть разница?

zenja
На сайте с 04.08.2010
Offline
139
#4

богоносец, спасибо. теперь более или менее стало понятней.

zenja
На сайте с 04.08.2010
Offline
139
#5

upd:

таки пришлось отказать от редиректов

http://site.ru/url1/ -> http://site.ru/url1

http://site.ru/url1/index.php -> http://site.ru/url1

т.к. невозможно попасть в админку по адресу /administrator/index.php (джумла)

по сути дубли остались, но, как мне кажется, по правильному совету богоносца - подобные проблемы нужно решать по мере их появления, а не заранее

dma84
На сайте с 21.04.2009
Offline
168
#6
zenja:
невозможно попасть в админку по адресу /administrator/index.php (джумла)

RewriteCond %{THE_REQUEST} !/administrator/index\.php [NC]

RewriteRule бла-бла-бла
zenja
На сайте с 04.08.2010
Offline
139
#7
dma84:
RewriteCond %{THE_REQUEST} !/administrator/index\.php [NC]
RewriteRule бла-бла-бла

так тоже пробовал. не пускает - зацикливаются редиректы

богоносец
На сайте с 30.01.2007
Offline
774
#8
zenja:
подобные проблемы нужно решать по мере их появления, а не заранее

Это про мелкие нюансы типа кривых крошек в Яндексе.

Если у вас будет всего 1 или 3 дубля — это не проблема, её можно решить и позже. Но старайтесь избежать вероятности попадания в индекс в разы больше страниц, чем их есть на сайте. Нельзя отдавать один и тот же контент по разным урлам:

/ru/forum/development/web

/ru/forum/development/web

/ru/forum/development/web

200

200

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