Форум сетевых администраторов
Показаны 1 сообщений на этой странице

Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- Другие (http://netadmin.ws/forum/forumdisplay.php?forumid=48)
-- Redirect в phpBB (http://netadmin.ws/forum/showthread.php?threadid=10063)


Помещено Jovani 25-12-2004 в 11:41:

Redirect в phpBB

Не секрет, что спамеры часто кидают свою рекламу в форумы для повышения Page Rank.
Все-таки, похоже, что Google учитывает ссылки с форумов.
Мне честно говоря влом вычищать такой спам, да и не всегда есть время.

Предлагаю немного обломить таких деятелей в форуме на движке phpBB.
Идея, в общем-то не нова - пускать все запощенные ссылки через редирект.
То есть, после того, как спамер запостил свою ссылку, она примерно приобретает вид из такого:
http://spam.com
в такой:
http://your_site/forum/goto.php?url=http://spam.com


Значит делаем так:
Сперва создаем сам редиректор - файл goto.php с содержанием:

code:

<?php
  
$site="";
foreach ($_GET as $key => $value) { 
	$site .= $key."=".$value."&";
}

$site = substr($site, 4, -1); 

// Moved Permanently - для гугля, чтобы не терялся Page Rank
//	header('HTTP/1.1 301 Moved Permanently');
	header("Location: $site");
    
?>


И закидываете, например в корень форума:
http://your_site/forum/goto.php

Далее, открываете файл includes/bbcode.php.
Находите:

code:
$ret = preg_replace("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);


Меняете на:

code:
$ret = preg_replace("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", "\\1<a href=\"http://your_site/forum/goto.php?url=\\2\" target=\"_blank\">\\2</a>", $ret);



Находите:

code:
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);


Меняете на:

code:
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", "\\1<a href=\"http://your_site/forum/goto.php?url=http://\\2\" target=\"_blank\">\\2</a>", $ret);



Далее, открываете файл templates/your_style/bbcode.tpl

Находите:

code:
<!-- BEGIN url --><a href="{URL}" target="_blank" class="postlink">{DESCRIPTION}</a><!-- END url -->


Меняете на:

code:
<!-- BEGIN url --><a href="http://your_site/forum/goto.php?url={URL}" target="_blank" class="postlink">{DESCRIPTION}</a><!-- END url -->



Естественно, в коде, измените http://your_site/forum/goto.php - на свой путь к директории, где расположен goto.php, а если он у вас в корне форума, то http://your_site/forum/ в коде необязательно.

Закачиваете bbcode.php и bbcode.tpl назад.
Такой метод, возможно, не особо уменьшит спамеров, но душу будет греть то, что они своего не получили
К тому же, некоторые говорят, что через внешние ссылки "утекает" Page Rank. Не знаю.
Добавлю еще, что таким способом, вы еще скроете реальный реферер, что не маловажно для различных варез-сайтов. В таких случаях, файл goto.php лучше разместить на другом хосте(сайте).
Вот, пожалуй все ...


PS.
Поздравляю всех жителей нетадмина, с наступающим Новым Годом!
Удачи!


Формат времени GMT. Текущее время 17:47.
Показаны 1 сообщений на этой странице

Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.