для гостей (не зарегеных на форуме, роботы в т.ч.) в ссылках не формируется параметр sid
viewforum.php?f=9&sid=e754d63c3c56af3a6b85511010568686
который используется вместо кукисов и каждый раз формируется заново, т.е. когда робот зайдет в следующий раз - он увидит эту же страницу но по другому адресу
viewforum.php?f=9&sid=72589597327589327459072375902434
насчет результатов индексации такого безобразия не скажу, не экспериментировал 🙄
после модификации, страница всегда будет иметь адрес
viewforum.php?f=9
в таком виде существуют все дополнения (моды) для phpbb
это текстовые файлы, в которых написано какой файл в исходниках открыть, какой кусок кода найти и на какой заменить (или просто добавить)
в данном случае правится файл includes/sessions.php
да уж получше, чем хакнутая булка ;)
Disallow: /index.php
это неинтересно, все равно в недрах phpbb рождаются ссылки на index.php по которым, как минимум, утекает PR - надо избавляться от них
################################################################# ## MOD Title: Guest Sessions MOD ## MOD Version: 0.04 ## MOD Author: CyberAlien <no@public_email> (Vjacheslav Trushkin) http://www.phpbbstyles.com ## MOD Description: ## This mod removes session id for guests from url and this way ## guests who don't have cookies like different robots will use ## correct urls. It can be used to allow googlebot and other ## search engines to spider your forum correctly. ## ## Installation Level: Easy ## Installation Time: 1-2 Minutes ## Files To Edit (1): includes/sessions.php ############################################################## ## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the ## latest version of this MOD. Downloading this MOD from other sites could cause malicious code ## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered ## in our MOD-Database, located at: http://www.phpbb.com/mods/ ############################################################## ## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD ############################################################## # #-----[ OPEN ]--------------------------------------------- # includes/sessions.php # #-----[ FIND ]--------------------------------------------- # around line 157 $sql = "UPDATE " . SESSIONS_TABLE . " SET session_user_id = $user_id, session_start = $current_time, session_time = $current_time, session_page = $page_id, session_logged_in = $login, session_admin = $admin WHERE session_id = '" . $session_id . "' AND session_ip = '$user_ip'"; # #-----[ REPLACE WITH ]--------------------------------------- # $sql_ip = $user_id == ANONYMOUS ? " AND session_ip = '$user_ip'" : ''; $sql = "UPDATE " . SESSIONS_TABLE . " SET session_ip = '$user_ip', session_start = $current_time, session_time = $current_time, session_page = $page_id, session_logged_in = $login, session_admin = $admin WHERE session_id = '" . $session_id . "' $sql_ip AND session_user_id = '$user_id'"; # #-----[ FIND ]--------------------------------------------- # around line 210 $SID = 'sid=' . $session_id; # #-----[ REPLACE WITH ]--------------------------------------- # $SID = $user_id > 0 ? 'sid=' . $session_id : ''; # #-----[ FIND ]--------------------------------------------- # around line 288 $SID = ($sessionmethod == SESSION_METHOD_GET || defined('IN_ADMIN')) ? 'sid=' . $session_id : ''; # #-----[ REPLACE WITH ]--------------------------------------- # $SID = $userdata['user_id'] > 0 ? (($sessionmethod == SESSION_METHOD_GET || defined('IN_ADMIN')) ? 'sid=' . $session_id : '') : ''; # #-----[ FIND ]--------------------------------------------- # around line 340 // // If we reach here then no (valid) session exists. So we'll create a new one, # #-----[ BEFORE, ADD ]--------------------------------------- # elseif(empty($sessiondata)) { // try to login guest $sql = "SELECT u.*, s.* FROM " . SESSIONS_TABLE . " s, " . USERS_TABLE . " u WHERE s.session_ip = '$user_ip' AND s.session_user_id = " . ANONYMOUS . " AND u.user_id = s.session_user_id LIMIT 0, 1"; if ( !($result = $db->sql_query($sql)) ) { message_die(CRITICAL_ERROR, 'Error doing DB query userdata row fetch', '', __LINE__, __FILE__, $sql); } $userdata = $db->sql_fetchrow($result); if ( isset($userdata['user_id']) ) { if ( $current_time - $userdata['session_time'] > 60 ) { $sql = "UPDATE " . SESSIONS_TABLE . " SET session_time = $current_time, session_start = $current_time, session_page = 0 WHERE session_id = '" . $userdata['session_id'] . "'"; if ( !$db->sql_query($sql) ) { message_die(CRITICAL_ERROR, 'Error updating sessions table', '', __LINE__, __FILE__, $sql); } } return $userdata; } } # #-----[ SAVE/CLOSE ALL FILES ]------------------------------------------ # # EoM
и неплохо бы запретить в роботсе индексацию всякой гадости:
Disallow: /faq.php Disallow: /login.php Disallow: /memberlist.php Disallow: /posting.php Disallow: /profile.php Disallow: /viewonline.php
а многие и еще больше запрещают http://phpbbguru.net/robots.txt
и для сапы тоже 🚬
+1
закрыть всегда можно, пропиарить на паре форумов игровых - народу набьется, у кого нету [SEO] в начале ника - можно кикать, если надо место для "своих" ;)
для этого сделать 5 мест для спектаторов, если кто в спектаторах покажется с [SEO] - админ освобождает для него место
мне интересно, а когда от команды остается один человек, тоже террорам бомбу не закладывать? 😮 можно проигрыш сразу записывать? 😂
c 1 января 2007 этот рубеж изменен до нуля, т.е. подавать декларацию надо даже на рубль доходов