• User Attivo

    Domanda su google bot & company

    Ciao tutti, ho un dubbio...
    Prima avevo phpbb3, e vedevo tutti i giorni tra i visitatori i vari bot (google, yahoo, msn, ecc...).
    Da quando sono passata a vbulletin non ne ho più visto uno...
    E' una funzione che devo abilitare dal PCA o è normale?
    Se va abilitata, mi dite come fare per favore?
    Grazie mille. :ciauz:


  • User Attivo

    Ho trovato questa interessante discussione:

    http: //www .giorgiotave.it/forum/plugins-per-vbulletin/31630-come-chiudere-il-forum-alla-lettura-ma-permettere-lindicizzazione.html

    Ho fatto tutto quello che vi è indicato, ma non mi è chiara una cosa:

    Dove il numero identifica il gruppo utente degli utenti registrati.
    Generalmente è 2, ma voi controllate e adeguatelo in base al vostro setting.

    Dove creare un gruppo utenti per i bot?
    O una volta fatto quanto detto, sono a posto così? Scusate.... :mmm:


  • Super User

    Quello serve per far vedere ai bot anche le sezioni riservate ai soli registrati. 🙂


  • User Attivo

    Ciao Cionfs, allora il primo l'ho inserito comunque perchè ho messo in permessi in modo tale che i soli utenti registrati abbiano accesso alle sezioni del forum. (quindi rimane valida la domanda) > Dove creare un gruppo utenti per i bot?
    O una volta fatto quanto detto, sono a posto così? Scusate.... :mmm:

    Per quanto riguarda il plugin che mi hai segnalato, l'ho installato adesso.
    Scusa l'ignoranza, ma una volta installato devo fare qualcosa, o sono a posto così? 😄


  • Super User

    Ciao Simona. 🙂

    Il plugin che ti ho segnalato ti dovrebbe far comparire una cosa di questo tipo:

    tuonick, nickutente1, nickutente2, Google, Google AdSense, MSN Bot, Yahoo! Slurp


  • User Attivo

    L'unica differenza che vedo al momento è tra gli utenti online:

    Utenti Online: 8 (7 utenti 0 ospiti and 1 Spiders)

    Ma non li vedo tra gli "utenti registrati"....


  • User Attivo

    Rettifico.... vedo ora tra gli utenti anche: (2) che corrisponde al numero di spider.
    Dovrei essere a posto quindi, perchè questo numero è tra i nomi degli utenti registrati... Giusto?


  • Super User

    Ciao. 🙂

    Io vedo, sul tuo forum, scritto (2) allo stato attuale. Questo mi fa pensare che il template che utilizzi non abbia piena compatibilità con questo prodotto. Prova a vedere se, con il template di default, ti fa visualizzare i bot nella lista degli utenti collegati. 🙂


  • User Attivo

    Ho appena provato, anche con lo stile di defoult visualizzo (2).


  • Super User

    Ok. Mi viene da ipotizzare che sia una nuova impostazione del plugin.


  • User Attivo

    Quindi potrebbe essere normale?...


  • Super User

    Potrebbe, ma non ne sono certo.

    Le versioni precedenti di quel prodotto sono state rimosse perchè ritenute non molto sicure (a quanto ho capito).

    In altri forum vedo invece che compaiono, insieme alla lista utenti, anche i bot (come ti ho scritto nel 5 post).


  • Super User

    Per quanto riguarda la modifica che rende gli spider utenti registrati, puoi creare un gruppo con gli stessi permessi degli utenti iscritti oppure assegnargli lo stesso gruppo.

    Il numero id del gruppo lo vedi nella schermata di gestione dei gruppi utente.

    In genere, quello degli iscritti è 2 ed è quello che dovrai inserire dove spiegato.


  • User Attivo

    Con questa modifica (è da ieri che osservo) ho notato che in realtà tutti i visitatori adesso risultano come "spider".
    Ossia ho sempre il numero degli utenti registrati, sempre 0 visitatori, ed in numero di spider (che in realtà credo comprenda anche i visitatori).
    Adesso, ho creato un gruppo chiamato spider (id 27), ma non ho capito dove inserire i dati di questo gruppo per far si che i veri spider risultino come tali...


  • Super User

    Le due modifiche non interagiscono in alcun modo.

    Segui attentamente le istruzioni nell'altro thread, è spiegato tutto chiaramente.


  • User Attivo

    Grazie, ho cercato nel fili init.php ma purtroppo non trovo la stringa

    if (!empty($db->explain))
    ```Ne l'altra
    

    if ($is_bot == 1) {
    $vbulletin->userinfo['usergroupid'] = 2;
    }

    Eppure prima delle modifiche ricordo di averlo trovato e di aver inserito la seconda stringa subito sopra la prima.... :?

  • Super User

    Scarica nuovamente l'ultima versione di vbulletin e poi ricarica quel file via ftp.

    Una volta fatto riapporta le modifiche come spiegato nel thread.


  • User Attivo

    Ragazzi.... la stringa proprio non si trova... :bho:
    Vi riporto l'intero file, appena scaricato dal sito ufficiale:
    members.vbulletin. com

    <?php
    /*======================================================================*\
    || #################################################################### ||
    || # vBulletin 3.8.1 - Licence Number ***********
    || # ---------------------------------------------------------------- # ||
    || # Copyright ©2000-2009 Jelsoft Enterprises Ltd. 
    SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc. 
    SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc. All Rights Reserved. ||
    || # This file may not be redistributed in whole or significant part. # ||
    || # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # ||
    || # ********# ||
    || #################################################################### ||
    \*======================================================================*/
    
    if (!defined('VB_AREA') AND !defined('THIS_SCRIPT'))
    {
        echo 'VB_AREA or THIS_SCRIPT must be defined to continue';
        exit;
    }
    
    if (isset($_REQUEST['GLOBALS']) OR isset($_FILES['GLOBALS']))
    {
        echo 'Request tainting attempted.';
        exit;
    }
    
    // set the current unix timestamp
    define('TIMENOW', time());
    define('SAPI_NAME', php_sapi_name());
    define('SAFEMODE', (@ini_get('safe_mode') == 1 OR strtolower(@ini_get('safe_mode')) == 'on') ? true : false);
    
    // try to force display_errors on
    @ini_set('display_errors', true);
    
    // define current directory
    if (!defined('CWD'))
    {
        define('CWD', (($getcwd = getcwd()) ? $getcwd : '.'));
    }
    
    // #############################################################################
    // fetch the core classes
    require_once(CWD . '/includes/class_core.php');
    
    // initialize the data registry
    $vbulletin =& new vB_Registry();
    
    // parse the configuration ini file
    $vbulletin->fetch_config();
    
    if (CWD == '.')
    {
        // getcwd() failed and so we need to be told the full forum path in config.php
        if (!empty($vbulletin->config['Misc']['forumpath']))
        {
            define('DIR', $vbulletin->config['Misc']['forumpath']);
        }
        else
        {
            trigger_error('<strong>Configuration</strong>: You must insert a value for <strong>forumpath</strong> in config.php', E_USER_ERROR);
        }
    }
    else
    {
        define('DIR', CWD);
    }
    
    if (!empty($vbulletin->config['Misc']['datastorepath']))
    {
            define('DATASTORE', $vbulletin->config['Misc']['datastorepath']);
    }
    else
    {
            define('DATASTORE', DIR . '/includes/datastore');
    }
    
    // load database class
    switch (strtolower($vbulletin->config['Database']['dbtype']))
    {
        // load standard MySQL class
        case 'mysql':
        case 'mysql_slave':
        case '':
        {
            $db =& new vB_Database($vbulletin);
            break;
        }
    
        // load MySQLi class
        case 'mysqli':
        case 'mysqli_slave':
        {
            $db =& new vB_Database_MySQLi($vbulletin);
            break;
        }
    
        // load extended, non MySQL class
        default:
        {
        // this is not implemented fully yet
        //    $db = 'vB_Database_' . $vbulletin->config['Database']['dbtype'];
        //    $db =& new $db($vbulletin);
            die('Fatal error: Database class not found');
        }
    }
    
    $db->appshortname = 'vBulletin (' . VB_AREA . ')';
    
    if (!defined('SKIPDB'))
    {
        // we do not want to use the slave server at all during this process
        // as latency problems may occur
        $vbulletin->config['SlaveServer']['servername'] = '';
        // make database connection
        $db->connect(
            $vbulletin->config['Database']['dbname'],
            $vbulletin->config['MasterServer']['servername'],
            $vbulletin->config['MasterServer']['port'],
            $vbulletin->config['MasterServer']['username'],
            $vbulletin->config['MasterServer']['password'],
            $vbulletin->config['MasterServer']['usepconnect'],
            $vbulletin->config['SlaveServer']['servername'],
            $vbulletin->config['SlaveServer']['port'],
            $vbulletin->config['SlaveServer']['username'],
            $vbulletin->config['SlaveServer']['password'],
            $vbulletin->config['SlaveServer']['usepconnect'],
            $vbulletin->config['Mysqli']['ini_file'],
            $vbulletin->config['Mysqli']['charset']
        );
        if (!empty($vbulletin->config['Database']['force_sql_mode']))
        {
            $db->force_sql_mode('');
        }
    
        // make $db a member of $vbulletin
        $vbulletin->db =& $db;
    
        // #############################################################################
        // fetch options and other data from the datastore
    
        // grab the MySQL Version once and let every script use it.
        $mysqlversion = $db->query_first("SELECT version() AS version");
        define('MYSQL_VERSION', $mysqlversion['version']);
    
        if (VB_AREA == 'Upgrade')
        {
            $optionstemp = false;
    
            $db->hide_errors();
                $optionstemp = $db->query_first("SELECT template FROM template WHERE title = 'options' AND templatesetid = -1");
            $db->show_errors();
    
            // ## Found vB2 Options so use them...
            if ($optionstemp)
            {
                eval($optionstemp['template']);
                $vbulletin->options =& $vboptions;
                $vbulletin->versionnumber = $templateversion;
            }
            else
            {
                // we need our datastore table to be updated properly to function
                $db->hide_errors();
                $db->query_write("ALTER TABLE " . TABLE_PREFIX . "datastore ADD unserialize SMALLINT NOT NULL DEFAULT '2'");
                $db->show_errors();
    
                $datastore_class = (!empty($vbulletin->config['Datastore']['class'])) ? $vbulletin->config['Datastore']['class'] : 'vB_Datastore';
    
                if ($datastore_class != 'vB_Datastore')
                {
                    require_once(DIR . '/includes/class_datastore.php');
                }
                $vbulletin->datastore =& new $datastore_class($vbulletin, $db);
                $vbulletin->datastore->fetch($specialtemplates);
            }
        }
        else if (VB_AREA == 'Install')
        { // load it up but don't actually call fetch, we need the ability to overwrite fields.
            $datastore_class = (!empty($vbulletin->config['Datastore']['class'])) ? $vbulletin->config['Datastore']['class'] : 'vB_Datastore';
    
            if ($datastore_class != 'vB_Datastore')
            {
                require_once(DIR . '/includes/class_datastore.php');
            }
            $vbulletin->datastore =& new $datastore_class($vbulletin, $db);
        }
    
        // ## Load latest bitfields, overwrite datastore versions (if they exist)
        // ## (so latest upgrade script can access any new permissions)
        require_once(DIR . '/includes/class_bitfield_builder.php');
        if (vB_Bitfield_Builder::build_datastore() !== false)
        {
            $myobj =& vB_Bitfield_Builder::init();
            require_once(DIR . '/includes/functions.php');
            require_once(DIR . '/includes/functions_misc.php');
    
            foreach (array_keys($myobj->datastore) AS $group)
            {
                $vbulletin->{'bf_' . $group} =& $myobj->datastore["$group"];
                foreach (array_keys($myobj->datastore["$group"]) AS $subgroup)
                {
                    $vbulletin->{'bf_' . $group . '_' . $subgroup} =& $myobj->datastore["$group"]["$subgroup"];
                }
            }
        }
        else
        {
            trigger_error('Error Building Bitfields', E_USER_ERROR);
        }
    }
    
    // setup an empty hook class in case we run some of the main vB code
    require_once(DIR . '/includes/class_hook.php');
    $hookobj =& vBulletinHook::init();
    $vbulletin->pluginlist = '';
    
    /*======================================================================*\
    || ####################################################################
    || # Downloaded: 18:26, Tue Feb 24th 2009
    || # CVS: $RCSfile$ - $Revision: 26886 $
    || ####################################################################
    \*======================================================================*/
    ?>
    ```Il file ovviamente è init.php che si trova nella cartella Upload>Install....

  • Super User

    Il file init.php si deve trovare nella cartella includes. 🙂

    In alternativa a quella modifica c'è questo che non necessita di modifiche a files. 🙂


  • User Attivo

    Ho corretto il fili init.php. 😄
    Ho installato anche il file che mi hai appena passato... posso lasciare entrambe le cose, oppure devo usare uno o l'altro? 😄
    Grazie Cionfs, sei sempre gentilissimo.. ed io il solito disastro! :eheh: