• User

    Codice per scrivere il passaggio dello spider

    Ho una funzione sche scrive su file quando passano i vari bot:

    if (strstr($_SERVER['HTTP_USER_AGENT'], 'Googlebot')){$bot='Googlebot';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'Mediapartners')){$bot='Adsense';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'Slurp')){$bot='Hot Bot';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'ichiro')){$bot='ichiro';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'msnbot')){$str_bot='Msn';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'bingBot')){$str_bot='Bing';}

    Il guaio è che funziona a dovere von googlebot o ichiro, ma fallisce se invece il bon è bingbot o msnbot.

    A cosa può essere dovuto questo strano comportamento?
    Grazie


  • User Attivo

    Prova a usare stristr() .


  • User

    @supercapocc said:

    Prova a usare stristr() .

    Grazie gia fatto, e trovato pure l'errore: usavo 2 nomi diversi come variabile di destinazione

    greg


  • User

    @netgreg said:

    Ho una funzione sche scrive su file quando passano i vari bot:

    if (strstr($_SERVER['HTTP_USER_AGENT'], 'Googlebot')){$bot='Googlebot';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'Mediapartners')){$bot='Adsense';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'Slurp')){$bot='Hot Bot';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'ichiro')){$bot='ichiro';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'msnbot')){$str_bot='Msn';}
    else if (strstr($_SERVER['HTTP_USER_AGENT'], 'bingBot')){$str_bot='Bing';}

    Il guaio è che funziona a dovere von googlebot o ichiro, ma fallisce se invece il bon è bingbot o msnbot.

    A cosa può essere dovuto questo strano comportamento?
    Grazie

    Con gli spider sono più diretto di te 🙂

    [php]

    <Location />
    SetEnvIf User-Agent "msnbot" BlockUA
    SetEnvIf User-Agent "bingbot" BlockUA
    SetEnvIf User-Agent "Googlebot" BlockUA
    SetEnvIf User-Agent "Mediapartners" BlockUA
    SetEnvIf User-Agent "Slurp" BlockUA
    SetEnvIf User-Agent "Ikiro" BlockUA
    Order allow,deny
    Allow from all
    Deny from env=BlockUA
    </Location>
    [/php]

    Li chiudo fuori della porta a ciao ciao. Grazie a dio esiste Apache


  • User

    Grazie Aragonese,
    avevo provato un codice simile a qualo consigliato da te, ma non sono riuscito a farlo funzionare. Era diverso, non a veva il tag location.
    Ma spiegami meglio: va messo in htaccess, vero?


  • User

    @netgreg said:

    Grazie Aragonese,
    avevo provato un codice simile a qualo consigliato da te, ma non sono riuscito a farlo funzionare. Era diverso, non a veva il tag location.
    Ma spiegami meglio: va messo in htaccess, vero?

    apache.conf


  • User

    Ho gia risposto ma non vedo nulla, riscrivo.

    Non credo che il mio hoster mi faccia toccare quel file, penso che oltre htaccess non mi lasci andare.

    Ad oggi ho provato vari per rendere il sito invisibile a vari bot, ma son riuscito sono con Deny Num_ip. Se il bot cambia ip... non funziona piu.

    Inoltre il server ho notato che risponde in modo strano: prima 301 e subito dopo 401.
    Senza contare che una volta in mezzo a due 401 ha risposto con un 200!

    Se non posso rendere il sito invisibile almeno redirigere le richieste ad un sito inesistente, come il codice sotto, che non va:

    #sbarazziamoci dei bot
    RewriteCond %{HTTP_USER_AGENT} ^BadBot
    RewriteCond %{HTTP_USER_AGENT} ^scoutjet
    RewriteCond %{HTTP_USER_AGENT} ^woopingbot
    RewriteRule ^(.)$ http: //go.away/
    #RewriteRule ^.
    $ http: //127.0.0.1 [R,L]


  • User

    @netgreg said:

    Ho gia risposto ma non vedo nulla, riscrivo.

    Non credo che il mio hoster mi faccia toccare quel file, penso che oltre htaccess non mi lasci andare.

    Ad oggi ho provato vari per rendere il sito invisibile a vari bot, ma son riuscito sono con Deny Num_ip. Se il bot cambia ip... non funziona piu.

    Inoltre il server ho notato che risponde in modo strano: prima 301 e subito dopo 401.
    Senza contare che una volta in mezzo a due 401 ha risposto con un 200!

    Se non posso rendere il sito invisibile almeno redirigere le richieste ad un sito inesistente, come il codice sotto, che non va:

    #sbarazziamoci dei bot
    RewriteCond %{HTTP_USER_AGENT} ^BadBot
    RewriteCond %{HTTP_USER_AGENT} ^scoutjet
    RewriteCond %{HTTP_USER_AGENT} ^woopingbot
    RewriteRule ^(.)$ http: //go.away/
    #RewriteRule ^.
    $ http: //127.0.0.1 [R,L]

    Ti manca il mod_rewrite


  • User

    @Aragonesse said:

    Ti manca il mod_rewrite

    Sembra che il modulo sia presente, perchè queste due righe di codice, molto simili, funzionano bene:

    la prox riga redirect da senza www a con www

    RewriteCond %{HTTP_HOST} ^xprenotare.it
    RewriteRule ^(.*)$ www xprenotare.it/$1 [R=301,L]


  • User

    @netgreg said:

    Sembra che il modulo sia presente, perchè queste due righe di codice, molto simili, funzionano bene:

    la prox riga redirect da senza www a con www

    RewriteCond %{HTTP_HOST} ^xprenotare.it
    RewriteRule ^(.*)$ www xprenotare.it/$1 [R=301,L]

    
                RewriteEngine On
                RewriteBase / 
                RewriteCond %{HTTP_USER_AGENT} ^BlackWidow  
                RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:[email protected]  
                RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw  
                RewriteCond %{HTTP_USER_AGENT} ^DISCo  
                RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon  
                RewriteCond %{HTTP_USER_AGENT} ^eCatch  
                RewriteCond %{HTTP_USER_AGENT} ^EirGrabber  
                RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon  
                RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures  
                RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro  
                RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE  
                RewriteCond %{HTTP_USER_AGENT} ^FlashGet  
                RewriteCond %{HTTP_USER_AGENT} ^GetRight  
                RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla  
                RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It  
                RewriteCond %{HTTP_USER_AGENT} ^GrabNet  
                RewriteCond %{HTTP_USER_AGENT} ^Grafula  
                RewriteCond %{HTTP_USER_AGENT} ^HMView  
                RewriteCond %{HTTP_USER_AGENT} ^HTTrack  
                RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper  
                RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker  
                RewriteCond %{HTTP_USER_AGENT} ^InterGET  
                RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja  
                RewriteCond %{HTTP_USER_AGENT} ^JetCar  
                RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider  
                RewriteCond %{HTTP_USER_AGENT} ^larbin  
                RewriteCond %{HTTP_USER_AGENT} ^LeechFTP  
                RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader  
                RewriteCond %{HTTP_USER_AGENT} ^MIDown\ tool  
                RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX  
                RewriteCond %{HTTP_USER_AGENT} ^Navroad  
                RewriteCond %{HTTP_USER_AGENT} ^NearSite  
                RewriteCond %{HTTP_USER_AGENT} ^NetAnts  
                RewriteCond %{HTTP_USER_AGENT} ^NetSpider  
                RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire  
                RewriteCond %{HTTP_USER_AGENT} ^NetZIP  
                RewriteCond %{HTTP_USER_AGENT} ^Octopus  
                RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer  
                RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator  
                RewriteCond %{HTTP_USER_AGENT} ^PageGrabber  
                RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto  
                RewriteCond %{HTTP_USER_AGENT} ^pcBrowser  
                RewriteCond %{HTTP_USER_AGENT} ^RealDownload  
                RewriteCond %{HTTP_USER_AGENT} ^ReGet  
                RewriteCond %{HTTP_USER_AGENT} ^Siphon  
                RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger  
                RewriteCond %{HTTP_USER_AGENT} ^SmartDownload  
                RewriteCond %{HTTP_USER_AGENT} ^SuperBot  
                RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP  
                RewriteCond %{HTTP_USER_AGENT} ^Surfbot  
                RewriteCond %{HTTP_USER_AGENT} ^tAkeOut  
                RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro  
                RewriteCond %{HTTP_USER_AGENT} ^VoidEYE  
                RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector  
                RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker  
                RewriteCond %{HTTP_USER_AGENT} ^WebAuto  
                RewriteCond %{HTTP_USER_AGENT} ^WebCopier  
                RewriteCond %{HTTP_USER_AGENT} ^WebFetch  
                RewriteCond %{HTTP_USER_AGENT} ^WebReaper  
                RewriteCond %{HTTP_USER_AGENT} ^WebSauger  
                RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor  
                RewriteCond %{HTTP_USER_AGENT} ^WebStripper  
                RewriteCond %{HTTP_USER_AGENT} ^WebWhacker  
                RewriteCond %{HTTP_USER_AGENT} ^WebZIP  
                RewriteCond %{HTTP_USER_AGENT} ^Wget  
                RewriteCond %{HTTP_USER_AGENT} ^Widow  
                RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider  
                RewriteCond %{HTTP_USER_AGENT} ^Zeus
                RewriteRule ^.*$ **METTI QUA QUELLO CHE VUOI  **[L,R]
    
    

    Prova questo