- Home
- Categorie
- Coding e Sistemistica
- WordPress
- SPAM nella ricerca interna di WordPress
-
@ltmac ha detto in SPAM nella ricerca interna di WordPress:
Grazie ancora, però non ho capito come ne vieto l'accesso tramite robots.txt. Puoi farmi un esempio?
Certo, basta leggere la doc https://developers.google.com/search/docs/crawling-indexing/robots/create-robots-txt?hl=fr
1 Risposta -
ok, ma se non ho il nome del bot come lo blocco? io dai log vedo solo il bot di Google che scansiona queste pagine
1 Risposta -
@ltmac ha detto in SPAM nella ricerca interna di WordPress:
ok, ma se non ho il nome del bot come lo blocco? io dai log vedo solo il bot di Google che scansiona queste pagine
Riprovo un ultima volta
Te, non devi bloccare nessuno, come dicevo il robots.txt non blocca nessuno. Il robots.txt è un file dove di comunicazione tra il tuo sito e i bot, che dichiara dove i bot possono andare e dove non possono andare.
In poche parole se indici ai bot nel robot.txt che non possono andare in determinata una cartella, Googlebot smettera di andarci, ma il tuo server non blocca nessuno, stai solo dicendo ai bot "per piacere non andate in queste cartelle".
Visto che il tuo problema riguarda solo Googlebot allora puoi risolvere in questo modo perche i bot di Google rispettano le direttive del robots.txt.
Quando aggiungi questa regola nel robots.txt non specificare la regola per Googlebot, in questo modo la rispetterano anche i bot di Bing ed altri
1 Risposta -
Grazie ancora per la pazienza, se dico a Googlebot di non seguire:
User-agent: Googlebot
Disallow: /?s=
Disallow: /search/Non rischio di ritrovarmi tutti i risultati indicizzati?
1 Risposta -
@ltmac ha detto in SPAM nella ricerca interna di WordPress:
Grazie ancora per la pazienza, se dico a Googlebot di non seguire:
User-agent: Googlebot
Disallow: /?s=
Disallow: /search/Lo sai che tu fai un po arrabbiare, perché non prendi il tempo di leggere. Intanto la tua cartella /search/ forse e sbagliata, io ho visto it/search nei tuoi primi messaggi.
Non rischio di ritrovarmi tutti i risultati indicizzati?
Pensaci, te stai dicendo al motore di non esplorare la pagina, se lui non la vede non te la indicizza.
Detto questo, il robots.txt non serve a controllare l'indicizzazione, ma l'esplorazione (la scansione) del sito, l'indicizzazione è un altro concetto.
Niente ti vieta (anzi è ancora meglio) aggiugere nel codice di tutte le pagine di ricerca una direttiva "noindex"
1 Risposta -
@walid ha detto in SPAM nella ricerca interna di WordPress:
Pensaci, te stai dicendo al motore di non esplorare la pagina, se lui non la vede non te la indicizza.
Per mettere il blocco tramite robots.txt si è trovato con 3.000 pagine nell'indice di Google – indicizzate, ma bloccate da robots.txt – https://www.seogarden.net/non-bloccare-le-query-spam-case-study/
-
@ltmac ha detto in SPAM nella ricerca interna di WordPress:
Ho atteso che il problema si risolvesse ma ho notato un aumento di pagine scansionate ma non indicizzate.
Ciao,
segui il mio primo post per risolvere il problema. Le altre azioni che hai fatto potrebbero avere effetti indesiderati.Se blocchi da robots.txt in realtà blocchi solo Google che non potrà vedere il noindex che hai messo.
Presta molta attenzione a bloccare ip da htaccess, potresti bloccare utenti o bot di Google e similari con pessimi risultati.P.s.
Analizza il motivo per cui hai 104.540 url non indicizzate, che url sono? Tutte create dai bot di spam? Se si sono in noindex?
1 Risposta -
Grazie per la risposta, si la maggior parte sono url create da bot spam tutte in noindex. Ho installato tramite htaccess firewall 7G e poi messo un filtro che se effettuano una ricerca con quelle parole spam li mando in 410. Da queste modifiche noto un calo di pagine spam su GSC, però attraverso i log vedo sempre i bot che scansionano queste pagine.
Allego il codice da applicare su function.php, magari può tornare utile a qualcuno:
/*---------------------------------------------------*/ /* SEARCH PAGES WITH SPAM RESULTS SEND 410 HTTP CODE */ /*---------------------------------------------------*/ add_filter( 'pre_get_posts', 'tdstart_block_search' ); function tdstart_block_search( $query ) { if ( ! empty( $query->query_vars['s'] ) ) { $blacklist = array( '大奖', 'q82','%E5','%25','%E8','IM%','SM%','88%' ); foreach ( $blacklist as $term ) { if ( mb_stripos( $query->query_vars['s'], $term ) !== false ) { http_response_code( 410 ); exit(); } } } }
-
@homeworker
Grazie per la risposta, si hai ragione infatti controllo sempre i log per inserire i nuovi con la speranza che blocco questi bot. Wordfence lo sto già utilizzando ed anche Cloudflare. Ora sto provvedendo ad installare il firewall di Wordfance che dovrebbe aiutare.