Не секрет, что, используя CMS phpBB, рано или поздно сталкиваешься с проблемой множества проиндексированных поисковиками ссылок различного вида, но ведущих на одну и ту же страницу. В глазах Яндекса и Google это выглядит, как множество копий одной и той же страницы на вашем сайте, а это залог пессимизации в выдаче. Нужно, чтобы на 1 страницу вел только 1 url. Добиться этого можно несколькими способами: либо редактированием robots.txt, либо установкой на форум модификаций. На мой взгляд самая достойная - phpBB SEO Ultimate SEO URL. Офсайт  http://www.phpbb-seo.com/.

После установки сео мода ссылки вида http://site.ru/viewtopic.php?f=1&t=1 будут иметь вид  http://site.ru/topic1.html Также будет возможность заиметь чпу, например, http://site.ru/ustanovka-phpbb-seo-ultimate-seo-url-t1.html, в том числе автоматическую транслитерацию кириллических заголовков в url.

Установка не самая простая, но если быть внимательным, не займет много времени. Инструкция дана на примере phpBB 3.0.9  и phpBB SEO Ultimate SEO URL v0.6.8, годится и для phpBB 3.0.8 и phpBB SEO Ultimate SEO URL v0.6.6. Инструкция по установке для phpBB 3.0.9 без дополнительный модулей (работоспособность проверена). С некоторыми модами может возникнуть конфликт (если они у вас ранее установлены), но если есть голова, все решаемо.

Надеюсь, не нужно напоминать, что перед установкой любых модификаций необходимо сделать резервную копию форума?

1. Качаем мод phpBB_SEO_Ultimate_SEO_URL_v0.6.8.zip или с официального сайта.

2. Распаковываем архив с модом на своем компьютере.

3. Заходим по FTP в корень своего сайта (точнее, в корень форума, если у вас выше уровнем стоит другая CMS) и заливаем туда все из папки
phpBB_SEO_Ultimate_SEO_URL_v0.6.8\contrib\phpBB_3.0.9_modified_files\root с заменой всех файлов. Если вы уже модифицировали код форума, заменяйте все файлы, и модифицируйте их снова.

4. Загружаем в корень форума все файлы из папки phpBB_SEO_Ultimate_SEO_URL_v0.6.8\root

5. Изменяем права доступа к папке phpbb_seo/cache/ на 755

6. Идем по FTP в папку cache/ и удаляем все файлы кроме .htaccess

7. В браузере открываем  ваш_сайт.ру/phpbb_seo/phpbb_seo_install.php Жмем "Установка". Установилось.

8. Мод предложит перейти в панель управления форумом, идем

9. В панели управления появилась вкладка  ACP_CAT_PHPBB_SEO - это панель управления модом. Открываем, идем в ACP_HTACCESS, жмем "Выбрать все", копируем в буфер обмена (Ctrl+C)

По умолчанию, эти инструкции нужно добавить в .htaccess в корне сайта. Но если форум установлен не в корень, а в какую-либо другую директорию, нужно изменить настройки SEO - htaccess - More Options: да - Отправить - .htaccess location: да - отправить и полученные инструкции скопировать в файл .htaccess в корне форума. Иначе светит ошибка Not Found при попытке просмотра конфереции.

9. По FTP идем в корень форума, открываем .htaccess и заменяем там все на то что скопировали в буфер (Ctrl+A, Ctrl+V)

10. Русификация: качаем русскую локализацию мода, распаковываем архив у себя на компьютере. Закидываем файлы acp_phpbb_seo.php и info_acp_phpbb_seo.php в папку language/ru/mods/ . Русский язык для phpBB SEO Ultimate SEO URL v0.6.8

11. Включаем в моде автозамену ссылок: идем в панель управления модом,  Активировать замену URL: ставим галочку ДА и внизу страницы жмем Отправить.

Открываем сайт и проверяем ссылки на форумы/темы/пользователей (наводим на низ мышкой и смотрим, какого они вида), играем с настройками. Не забывайте после изменений менять и .htaccess на актуальный и чистить кэш.

Для ссылок вида  http://site.ru/topic1.html вышеизложенного вполне достаточно. Но если будете пользоваться режимом Advansed, нужно еще кое-какие файлы изменить. По настройке phpBB SEO Ultimate SEO URL после русификации мода, думаю, все понятно.

Теперь нужно научить мод переводить кириллицу в латиницу.

Транслитерация русских названий тем и форумов в ЧПУ

В файле phpbb_seo/phpbb_seo_class.php найти (первое вхождение)

return;
}

Добавить перед ним

// Custom characters replacement
   $url_replace = array(
     'А' => 'A', 'а' => 'a',
     'Б' => 'B', 'б' => 'b',
     'В' => 'V', 'в' => 'v',
     'Г' => 'G', 'г' => 'g',
     'Д' => 'D', 'д' => 'd',
     'Е' => 'E', 'е' => 'e',
     'Ё' => 'E', 'ё' => 'e',
     'Ж' => 'J', 'ж' => 'j',
     'З' => 'Z', 'з' => 'z',
     'И' => 'I', 'и' => 'i',
     'Й' => 'Y', 'й' => 'y',
     'К' => 'K', 'к' => 'k',
     'Л' => 'L', 'л' => 'l',
     'М' => 'M', 'м' => 'm',
     'Н' => 'N', 'н' => 'n',
     'О' => 'O', 'о' => 'o',
     'П' => 'P', 'п' => 'p',
     'Р' => 'R', 'р' => 'r',
     'С' => 'S', 'с' => 's',
     'Т' => 'T', 'т' => 't',
     'У' => 'U', 'у' => 'u',
     'Ф' => 'F', 'ф' => 'f',
     'Х' => 'H', 'х' => 'h',
     'Ц' => 'C', 'ц' => 'c',
     'Ч' => 'CH', 'ч' => 'ch',
     'Ш' => 'SH', 'ш' => 'sh',
     'Щ' => 'SHCH', 'щ' => 'shch',
     'Ъ' => '', 'ъ' => '',
     'Ы' => 'I', 'ы' => 'i',
     'Ь' => '', 'ь' => '',
     'Э' => 'E', 'э' => 'e',
     'Ю' => 'U', 'ю' => 'u',
     'Я' => 'YA','я' => 'ya', 
);
   $this->seo_opt['url_find'] = array_keys($url_replace);
   $this->seo_opt['url_replace'] = array_values($url_replace);
// Custom characters replacement

Найти

$url = preg_replace('`\[.*\]`U','',$url);

После этой строчки добавить

$url = str_replace( $this->seo_opt['url_find'], $this->seo_opt['url_replace'], $url );

Сохранить файл обязательно в кодировке utf-8

Готово

А вот как убрать от индексации ссылку на phpbb-seo.com

Открываем phpbb_seo\phpbb_seo_class.php и ищем

if ($this->seo_opt['copyrights']['img'])

Следующаю за ней строку заменяем на

$output = '<br /><noindex><a rel="nofollow" href="http://www.phpbb-seo.com/" title="' . $this->seo_opt['copyrights']['title'] . '"><img src="' . $this->seo_path['phpbb_url'] . 'images/phpbb-seo.png" alt="' . $this->seo_opt['copyrights']['txt'] . '"/></a></noindex>';

Чистим кэш в админке

Если что то пошло совсем не так, восстанавливаем резервную копию. Чистим кэш.

На данный момент на офсайте доступна версия phpBB SEO Ultimate SEO URL v0.7.0 совместимая с phpBB3 3.0.10 и выше, но русского перевода для этой версии пока нет.