Тема: Дубли главной страницы вида http://site.ru/?abrakadabra

Здравствуйте.

Подскажите, пожалуйста, какой код нужно добавить в .htaccess, чтобы исключить дублирование главной страницы по адресам типа:

_http://site.ru/?abrakadabra
_http://site.ru/?abrakadabra.html
_http://site.ru/?primer
_http://site.ru/?primer.html
и т.п.

2

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

попробуй https://alaev.info/blog/post/3513

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

darwin пишет:

попробуй https://alaev.info/blog/post/3513

Первым делом, но проблему это не решило.

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Тоже самое и у меня. Даже после введения правок из блога.

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

FaeR пишет:

Тоже самое и у меня. Даже после введения правок из блога.

Проблема, кстати, не только у DLE-сайтов, на WordPress такая же ситуация.

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Скоро будет пост на блоге про различные редиректы, там рассмотрим и этот вопрос.

7

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

admin, Внесите пожалуйста на рассмотрение в пост https://talk.alaev.info/post/2363/

8

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Добрый вечер на форуме! Сегодня обнаружил дубль главной страницы такого адреса:

мой-сайт. ru /бла-бла-..

В общем в любой адрес страницы добавляешь -.. и открывается главная страница.

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Vanchik пишет:

Внесите пожалуйста на рассмотрение в пост https://talk.alaev.info/post/2363/

strongerOK пишет:

В общем в любой адрес страницы добавляешь -.. и открывается главная страница.

Возьмем в работу! Спасибо.

10

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Доброго времени суток всем форумчанам! Провел огромное кол-во времени, читая ваши посты Александр, за, что вам огромное спасибо. Выбрав из блога важные для меня моменты, произвел модификацию DLE. Установлен DLE 9.6 + LB 2.2.
      Долго описывать как я данные проблемы выискивал, но тем не менее они появились, а решить самостоятельно, мне их не под силу, очень надеюсь на вашу поддержку.

Список найденых мною дублей:

1. Дубли от ТСа домен/?блабла

2. /домен.ru/домен(без ру)/домен(без ру) и так до бесконечности, и с каждой новой главной страницы, можно выйти
на категории и полные новости (что мне кажется совсем не хорошо, кол-во возможных дублей зашкаливает)

3./домен.ru/page/page/page/ история как и в проблеме 2.

4./домен.ru/блабла.блабла ввод любых символов разделенных точкой

Пациент: aegisportal.ру

Начал заниматься сайтами месяца, как 3, поэтому строго не судите...Очень надеюсь на помощь, потому что масштаб трагедии кажется ужасающим. Гугл уже начал выдавать в поиск ссылку домен.ру/домен/домен/категория/новость.

11

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

По первому второму и третьему вопросу помогут эти строки:

RewriteRule ^domain\/domain(.*)+$ / [R=301,L]
RewriteRule ^page\/page(.*)+$ / [R=301,L]

Добавлять после RewriteEngine On, а domain в первой строке заменить на свое значение.

12 (09.01.2013 10:38 отредактировано savostk)

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Доброго утра! Спасибо за оперативность, редирект для page рабочий.  "?" как стояли на месте так и стоят, редирект не работает.

Мысли по дублю номер 2, есть какие нибудь? 

RewriteRule ^domain\/domain(.*)+$ / [R=301,L]

или это и были мысли по дублю №2?

Если нужна еще какая помощь,  готов с радостью ее представить!

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

Здравствуйте помогите пожалуйста побороть такой дубль:
_http://sait.ru/?/
Уже все перепробывал.

14

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

savostk, Разумеется, я ошибся при написании ответа, я написал решения для ВТОРОГО и ТРЕТЬЕГО варианта.

15

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

RewriteRule ^domain\/domain(.*)+$ / [R=301,L]

Александр, не работает у меня этот редирект. Может быть если поможет есть такое дело:

На сайте чпу 2, если отключить ф-цию обработки чпу, "/" в адресной строке дописываться перестают. Но в случае когда я напишу ссылку такого вида: _http://www.sait.ru/sait или _http://www.sait.ru/sait/sait (кол-во зависит только от терпения) "/" дописывается сам и открывается дубль главной. Заранее извиняюсь за назойливость.

16

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

savostk пишет:

Александр, не работает у меня этот редирект

Ты ведь заменяешь в моем коде "domain" на название своего домена?
Попробуй еще такие варианты:

RewriteRule ^domain(.*)$ http://site.ru/ [R=301,L]
RewriteRule ^domain http://site.ru/ [R=301,L]

17

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

admin пишет:

Ты ведь заменяешь в моем коде "domain" на название своего домена?

Да, конечно. К сожалению последние два варианта тоже не помогли... Беда так беда, не охото даже контент заливать, на хромую лошадь...

18

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

savostk пишет:

К сожалению последние два варианта тоже не помогли...

Да не может быть такого.
Давай нормальные url сюда, а то загадки какие-то сплошные. Не ссы, никто твой сайт не испортит тут!

19 (10.01.2013 11:53 отредактировано savostk)

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

admin пишет:

Не ссы, никто твой сайт не испортит тут!

Да не это все было из соображений приличия.
Оказалось я вчера был не прав, редиректы работают в url полной новости:

Как ввожу: _http://aegisportal.ru/aegisportal/aegisportal/gajdy_lineage/7-gaydy-po-nekru.html
После редиректа имею: _http://aegisportal.ru/gajdy_lineage/7-gaydy-po-nekru.html

Остается маленькая загвоздка, что каталоги все таки проскакивают.

Как ввожу: _http://aegisportal.ru/aegisportal/aegisportal/
После имею: _http://aegisportal.ru/aegisportal/aegisportal/

Т.е. на категориях реакции никакой. htacess сейчас имеет вид:

DirectoryIndex index.php
RewriteEngine On

### START Определяем главное зеркало как site.ru (site.ru заменить на свой домен, например alaev.info)
RewriteCond %{HTTP_HOST} ^www\.aegisportal\.ru$ [NC]
RewriteRule ^(.*)$ http://aegisportal.ru/$1 [R=301,L]
### END Определяем главное зеркало

RewriteRule ^page\/page(.*)+$ / [R=301,L]
RewriteRule ^aegisportal(.*)$ http://aegisportal.ru/ [R=301,L]

### START Редирект с первой страницы на основную
RewriteRule ^(.*)/page/1/$ $1/ [R=301,L]
RewriteRule ^(.*)page/1/$ $1/ [R=301,L]
### END Редирект с первой страницы на основную

# Репутация от ShapeShifter
RewriteRule ^user/reputation/([^/]*)(/?)+$ index.php?do=reputation&user=$1 [L]
RewriteRule ^user/reputation/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=reputation&user=$1&page=$2 [L]
RewriteRule ^user/reputation/([^/]*)/plus(/?)+$ index.php?do=reputation&doaction=plus&username=$1 [L]
RewriteRule ^user/reputation/([^/]*)/minus(/?)+$ index.php?do=reputation&doaction=minus&username=$1 [L]
RewriteRule ^user/reputation/([^/]*)/changes(/?)+$ index.php?do=repa_changes&user=$1 [L]
RewriteRule ^user/reputation/([^/]*)/changes/page([0-9]+)(/?)+$ index.php?do=repa_changes&user=$1&cstart=$2 [L]
RewriteRule ^reputation(/?)+$ index.php?do=repa_list [L]
RewriteRule ^reputation/page([0-9]+)(/?)+$ index.php?do=repa_list&cstart=$1 [L]
RewriteRule ^topusers\.html$ index.php?do=topusers [L]
 
# Редиректы
RewriteRule ^page/(.*)$ index.php?cstart=$1 [L]

# Сам пост
RewriteBase /
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&cstart=$5&news_name=$6 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(.*)\.(.*)$ engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news_page=$4&news_name=$5 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)\.(.*)$ index.php?subaction=showfull&year=$1&month=$2&day=$3&news_name=$4 [L]
 
RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$4&news_page=$2&cstart=$3 [L]
RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$3&news_page=$2 [L]
RewriteRule ^([^.]+)/print:page,([0-9]+),([0-9]+)-(.*)$ engine/print.php?news_page=$2&newsid=$3 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)/([0-9]+)-(.*)$ index.php?newsid=$2 [L]
 
RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$3&news_page=$1&cstart=$2 [L]
RewriteRule ^page,([0-9]+),([0-9]+)-(.*)$ index.php?newsid=$2&news_page=$1 [L]
RewriteRule ^print:page,([0-9]+),([0-9]+)-(.*)$ engine/print.php?news_page=$1&newsid=$2 [L]
RewriteRule ^([0-9]+)-(.*)$ index.php?newsid=$1 [L]

# За день
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2&day=$3 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&day=$3&cstart=$4 [L]
# За весь месяц
RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2 [L]
RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$ index.php?year=$1&month=$2&cstart=$3 [L]
# Вывод за весь год
RewriteRule ^([0-9]{4})(/?)+$ index.php?year=$1 [L]
RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ index.php?year=$1&cstart=$2 [L]
# вывод отдельному тегу
RewriteRule ^tags/([^/]*)(/?)+$ index.php?do=tags&tag=$1 [L]
RewriteRule ^tags/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=tags&tag=$1&cstart=$2 [L]
# поиск по доп полям
RewriteRule ^xfsearch/([^/]*)(/?)+$ index.php?do=xfsearch&xf=$1 [L]
RewriteRule ^xfsearch/([^/]*)/page/([0-9]+)(/?)+$ index.php?do=xfsearch&xf=$1&cstart=$2 [L]
# вывод для отдельного юзера
RewriteRule ^user/([^/]*)/rss.xml$ engine/rss.php?subaction=allnews&user=$1 [L]
RewriteRule ^user/([^/]*)(/?)+$ index.php?subaction=userinfo&user=$1 [L]
RewriteRule ^user/([^/]*)/page/([0-9]+)(/?)+$ index.php?subaction=userinfo&user=$1&cstart=$2 [L]
RewriteRule ^user/([^/]*)/news(/?)+$ index.php?subaction=allnews&user=$1 [L]
RewriteRule ^user/([^/]*)/news/page/([0-9]+)(/?)+$ index.php?subaction=allnews&user=$1&cstart=$2 [L]
RewriteRule ^user/([^/]*)/news/rss.xml(/?)+$ engine/rss.php?subaction=allnews&user=$1 [L]
# вывод всех последних новостей
RewriteRule ^lastnews(/?)+$ index.php?do=lastnews [L]
RewriteRule ^lastnews/page/([0-9]+)(/?)+$ index.php?do=lastnews&cstart=$1 [L]
# вывод в виде каталога
RewriteRule ^catalog/([^/]*)/rss.xml$ engine/rss.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)(/?)+$ index.php?catalog=$1 [L]
RewriteRule ^catalog/([^/]*)/page/([0-9]+)(/?)+$ index.php?catalog=$1&cstart=$2 [L]
# вывод непрочитанных статей
RewriteRule ^newposts(/?)+$ index.php?subaction=newposts [L]
RewriteRule ^newposts/page/([0-9]+)(/?)+$ index.php?subaction=newposts&cstart=$1 [L]
# вывод избранных статей
RewriteRule ^favorites(/?)+$ index.php?do=favorites [L]
RewriteRule ^favorites/page/([0-9]+)(/?)+$ index.php?do=favorites&cstart=$1 [L]

RewriteRule ^rules.html$ index.php?do=rules [L]
RewriteRule ^statistics.html$ index.php?do=stats [L]
RewriteRule ^addnews.html$ index.php?do=addnews [L]
RewriteRule ^rss.xml$ engine/rss.php [L]
RewriteRule ^sitemap.xml$ uploads/sitemap.xml [L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$ index.php?do=cat&category=$1&cstart=$2 [L]
RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^.]+)/rss.xml$ engine/rss.php?do=cat&category=$1 [L]
RewriteRule ^page,([0-9]+),([^/]+).html$ index.php?do=static&page=$2&news_page=$1 [L]
RewriteRule ^print:([^/]+).html$ engine/print.php?do=static&page=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1 [L]

### Редиректы с site.ru/category/index.php на site.ru/category/ и др.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.*)index\.php$
RewriteRule ^(.*)index\.php$ $1 [R=301,L]
### Редиректы с index.php на сайт
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ / [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

20

Re: Дубли главной страницы вида http://site.ru/?abrakadabra

savostk пишет:

все было из соображений приличия

Из этих соображений надо ставить нижнее подчеркивание перед _http://

savostk пишет:

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

Вот так вот еще попробуй:

RewriteRule aegisportal/$ http://aegisportal.ru/ [R=301,L]