121

Re: Общая тема по редиректам и борьбе с дублями в DLE

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

122

Re: Общая тема по редиректам и борьбе с дублями в DLE

admin пишет:

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

Понял. Спасибо!

123

Re: Общая тема по редиректам и борьбе с дублями в DLE

Здравствуйте! Имеется вопрос, уже наверно затертый до дыр. Но все же требуется помощь.
У меня есть проект site.ru, но я открыл новый проект 1site.ru (один в один), сделал редирект со старого домена на новый, переходя по ссылке (то есть по ссылке в поиске яндекса) site.ru/category старого домена, меня перекидывает на новый домен 1site.ru/index.php?do=cat&category=category. Помогите пожалуйста решить проблему, как убрать index.php?do=cat&category=, чтобы перекидывало с site.ru/category на 1site.ru/category.

p.s. ЧПУ включен, Тип ЧПУ 2, Обрабатывать неверные URL ЧПУ включен

124

Re: Общая тема по редиректам и борьбе с дублями в DLE

sable008, Просто необходимо прописать в .htaccess для старого домена:

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

125

Re: Общая тема по редиректам и борьбе с дублями в DLE

АлаичЪ, Спасибо за ответ.

126

Re: Общая тема по редиректам и борьбе с дублями в DLE

Здравствуйте, помогите решить проблему с закрытием от индексации поддоменов именно в поисковой системе google
Проблема в том, что у поддоменов и основного сайта один robots и htaccess.

Поддомены вида:
lg-optimus-g.sait.com
samsung-gt-l9000-galaxy-s.sait.com
motorola-droid-pro.sait.com
meizu-m9.sait.com
Их очень много.


Пробовал этот способ:

RewriteCond %{HTTP_USER_AGENT} ^.*google.* [NC]

RewriteCond %{HTTP_HOST} ^([a-z0-9-]+)\.site\.com.*$ [NC]

RewriteCond %{HTTP_HOST} !www\.site\.com.*$ [NC]

RewriteRule ^.*$ – [F]


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

Re: Общая тема по редиректам и борьбе с дублями в DLE

У поддоменов и у сайта может быть один robots и htaccess?
Какой ужас!
Как хорошо, что это не у меня.

128

Re: Общая тема по редиректам и борьбе с дублями в DLE

Может к сожалению.

129 (01.10.2015 13:13 отредактировано Diablo)

Re: Общая тема по редиректам и борьбе с дублями в DLE

Прочитал все 7 страниц, но не нашел дублей аналогичных тем, которые вылезли у меня:

http://site.ru/rukovodstva/page,1,2,11-minecraft-besplatnye-russkie-servera-247.html
http://site.ru/rukovodstva/11-minecraft-besplatnye-russkie-servera-247.html
http://site.ru/rukovodstva/page,1,7,11-minecraft-besplatnye-russkie-servera-247.html
http://site.ru/rukovodstva/page,1,4,11-minecraft-besplatnye-russkie-servera-247.html

Версия движка 8.5, Тип ЧПУ - 2
Подскажите как удалить такие дубли.

Update:
Попробовал способ описанный на этой странице:

Открываем файл /engine/modules/show.full.php

НАХОДИМ:

        } else {
 
            $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id'];
            $print_link = $config['http_home_url'] . "engine/print.php?newsid=" . $row['id'];
            $short_link = "";
 
        }

ВЫШЕ ДОБАВЛЯЕМ:

//обработка неправильного alt-name и 301 редирект
            $true_link = $config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1);
 
                if ($row['allow_comm']) { //если разрешены комменты
                    $conf_comm_by_page = intval( $config['comm_nummers'] ); // комм на стр из настроек
                    $news_comm_num = $row['comm_num']; // общее кол-во комм
                    $comm_page_count = @ceil( $news_comm_num / $conf_comm_by_page );
                        if ( ($comm_page_count >= 2) && (intval($_REQUEST['cstart']) >= 2) ) $full_link = $link_page . intval($_REQUEST['cstart']) . "," . $news_name . ".html";
                }
                if ($news_page >= 2) $full_link = $link_page . $news_name . ".html";
 
            if ($true_link != $full_link) {
                header('HTTP/1.1 301 Moved Permanently');
                header ('Location: ' . $full_link);
                die();
            }
//обработка неправильного alt-name и 301 редирект

Не помогло. Редиректа на правильный url не происходит.

130

Re: Общая тема по редиректам и борьбе с дублями в DLE

В show.full.php после

$tpl->set( '{full-link}', $full_link );

добавить

$full_link_ = !isset ($_GET['cstart']) ? $full_link : $link_page . intval ($_GET['cstart']) . ',' . $news_name . '.html';
if ($config['http_home_url'] . substr ($_SERVER['REQUEST_URI'], 1) != $full_link_) {
    header ('HTTP/1.1 301 Moved Permanently');
    header ('Location: ' . $full_link_);
    die ();
}

131

Re: Общая тема по редиректам и борьбе с дублями в DLE

Diablo, Эти дубли от навигации по комментам, никуда их редиректить не нужно, убьете страницы комментов.

Вам поможет руководство сделать то, что под заголовком - Добавляем тег rel=”canonical” для страниц просмотра полной новости

а также можете еще
открыть engine.php

перед

if ($config['allow_rss']) $metatags .= <<<HTML

добавить

if ($subaction == 'userinfo' OR
    $subaction == 'allnews' OR
    $subaction == 'newposts' OR
    $do == 'stats' OR
    $do == 'addnews' OR
    $do == 'register' OR
    $do == 'favorites' OR
    $do == 'rules' OR
    $do == 'pm' OR
    $do == 'feedback' OR
    $do == 'lastcomments' OR
    $do == 'lostpassword' OR
    $do == 'search' OR
    $do == 'lastnews' OR
    $do == 'alltags' OR
    $do == 'tags' OR
    ($newsid and (intval($_GET['cstart']) > 1)) OR
    $do == 'topnews' OR
    $dle_module == 'date') $metatags .= <<<HTML
\n<meta name="robots" content="noindex,nofollow">
HTML;

если у вас уже есть аналогичный код, то просто добавьте в него

($newsid and (intval($_GET['cstart']) > 1)) OR

через время дубли пропадут!

132

Re: Общая тема по редиректам и борьбе с дублями в DLE

Как сделать редирект с  site.ru/xfsearch/Kasia+Kowalska/ на site.ru (главную) ?

133

Re: Общая тема по редиректам и борьбе с дублями в DLE

Здравствуйте. Пытаюсь сделать 301 редирект htaccess, но возникла проблема с 1 из правил.

Само правило: RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1 [L]

Мои редиректы:

Redirect 301 /load/111/1 http://site.ru/category1/
Redirect 301 /load/111/2 http://site.ru/category2/
Redirect 301 /load/111/3 http://site.ru/category3/
Redirect 301 /load/111/4 http://site.ru/category4/

При вводе адреса http://site.ru/load/111/4 происходит редирект, но в адресной строке следующее:

http://site.ru/category4/?do=cat&category=load/111/4

Уже битый час ищу решение, никак не могу найти.
Заранее благодарен за помощь.

134

Re: Общая тема по редиректам и борьбе с дублями в DLE

Перенеси свои привила редиректа сразу же после RewriteEngine On.

135

Re: Общая тема по редиректам и борьбе с дублями в DLE

Здравствуйте! Надеюсь темой не ошибся. Обнаружил проблему, в результатах поиска гугла,  главная страница сайта дублируется вот по таким адресам:
wwww.site.ru
ww1.site.ru
ww2.site.ru
wwtw.site.ru
ww.site.ruww.site.ru
ww.site.ruww.site.ruww.site.ruww.site.ru

Точнее не дублируется, не знаю как правильно это описать. Ошибок по дублям страниц в вебмастере гугла нет, всё хорошо. На этих страницах просто висит заглушка моего хостинга:  Хостинг сайта ww1.site.ru(и так далее по списку) не существует или отключён.
Как же избавится от этих страниц?

136

Re: Общая тема по редиректам и борьбе с дублями в DLE

Так и пусть висит, они же вам не мешают жить и не плодят дубли. У поиска даже ассоциаций не будет с вашим сайтом и этими доменами!

137

Re: Общая тема по редиректам и борьбе с дублями в DLE

Так то оно так, но ведь интересно что это и как решить. Даже не могу сформулировать вопрос, чтоб хоть в гугле поискать)) Не подскажете?)

138

Re: Общая тема по редиректам и борьбе с дублями в DLE

Просто решить. Надо чтобы в корне всех этих доменов был htaccess файл и делал редирект на какой-то другой, нужный нам домен.

139 (24.12.2015 18:28 отредактировано ds8880)

Re: Общая тема по редиректам и борьбе с дублями в DLE

Задавал вопрос здесь https://talk.alaev.info/post/9933/#p9933 и здесь https://alaev.info/blog/post/2400#comment-67213, но видимо там никто не ответит в скором будущем, решил написать здесь.

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

После обновления до версии 10.6 и выполнения оптимизации title из 1 части, добрался до 2 части и возникла проблема после применения пункта "Редиректы с index.php или index.html на сайт":

### Редиректы с index.php или index.html на сайт 

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.(php|html)\ HTTP/ 
RewriteRule .* / [R=301,L]

Дело в том, что с http://sait.ru/index.php с указанным кодом и без него происходит редирект на http://sait.ru/, а c http://sait.ru/index.html в адресной строке появляется хвост http://sait.ru/?do=static&page=index&seourl=index

страница http://sait.ru/index.html - 301
страница http://sait.ru/?do=static&page=index&seourl=index - 404

Получается, что с http://sait.ru/index.html идет 301 редирект на несуществующую страницу http://sait.ru/?do=static&page=index&seourl=index

Стандартный .htaccess и engine.php пробовал вернуть, проблема таже, то есть этот хвостик генерирует движок.

Контент главной страницы прописан в самом файле main.tpl с помощью [aviable=main][/aviable]

Как избавиться от этого хвоста?



Придумал вот такой вариант решения.

Открыть /engine/modules/static.php найти :

@header ( "HTTP/1.0 404 Not Found" ); 

Выше вставить :

if (trim ($name) == "index")
{
header ("HTTP/1.1 301 Moved Permanently");
header ("Location: /");
exit ();
}

Теперь с sait.ru/index.html будет 301 редирект на sait.ru/?do=static&page=index&seourl=index, а с этого адреса идет 301 редирект на sait.ru/

Представляется, что данный вариант не идеален с точки зрения seo, так как два подряд 301 редиректа, думаю, не очень хорошо воспримут поисковики. Возможно ошибаюсь.

АлаичЪ, хотелось бы ознакомиться с Вашим мнением, а также людей, хорошо разбирющихся в seo по поводу такого двойного 301 редиректа.


В идеале было бы хорошо, чтобы 301 редирект с sait.ru/index.html шел сразу на sait.ru/ - думаю найдется решение на php типа: если статической страницы с адресом sait.ru/index.html не сушествует, то был бы сразу 301 редирект на sait.ru/, а не на sait.ru/?do=static&page=index&seourl=index и потом на sait.ru/

140

Re: Общая тема по редиректам и борьбе с дублями в DLE

Проблему решил.

Открываем /engine/modules/static.php и в самом конце файла находим:
 

    @header( "HTTP/1.0 404 Not Found" );
    $lang['static_page_err'] = str_replace ("{page}", $name.".html", $lang['static_page_err']);
    msgbox( $lang['all_err_1'], $lang['static_page_err'] );

Заменяем на:

  
if(trim($name) == "index")
{
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: /");
    exit();
}
    @header("HTTP/1.0 404 Not Found");
    @header("Status: 404 Not Found");
    @require_once($_SERVER['DOCUMENT_ROOT'].'/404.html');
    exit();

Теперь, с sait.ru/index.html идет 301 редирект на sait.ru/ и никаких промежуточных звеньев, как то sait.ru/?do=static&page=index&seourl=index, нет.