In breve
- Probabilmente sei qui perché questa stringa è comparsa in un log del server o in un rapporto del firewall.
- Scarichiamo soltanto un file che un commerciante ha configurato nel proprio account Comparano. Non facciamo mai la scansione di un sito.
- Se il firewall ci blocca, autorizza lo user agent: le regole per i sistemi più diffusi sono qui sotto.
- Non pubblichiamo un elenco di indirizzi IP; la sezione 4 spiega perché sarebbe peggio.
1.Di cosa si tratta
Comparano è un comparatore di prezzi. Un negozio che pubblica i suoi prodotti con noi ci fornisce l’indirizzo del proprio feed prodotti — un file che il negozio stesso pubblica — e noi lo scarichiamo con la frequenza che il negozio sceglie, così prezzi e disponibilità che mostriamo restano aggiornati.
Scarichiamo soltanto l’URL che un commerciante ha configurato nel proprio account Comparano. Non facciamo la scansione del sito, non seguiamo link, non inviamo moduli e non cerchiamo pagine che nessuno ci ha indicato.
2.Gli user agent
Sono due, separati di proposito: un hosting può legittimamente voler autorizzare il piccolo controllo occasionale e limitare in modo diverso il download pesante, cosa impossibile da esprimere con un solo nome.
| User agent | Che cosa fa | Con che frequenza |
|---|---|---|
ComparanoFeedBot/1.1 (+https://comparano.com/bot) | Scarica il feed prodotti configurato dal commerciante. | All’intervallo scelto dal commerciante — di norma ogni 3-24 ore, più una piccola richiesta delle sole intestazioni nel frattempo per verificare che il file sia ancora raggiungibile. |
ComparanoBot/1.1 (+https://comparano.com/bot) | Verifica che il negozio risponda e legge il file o il tag che dimostra che il dominio appartiene al commerciante che lo ha dichiarato. | Di rado. Una volta in fase di registrazione, poi saltuariamente. |
Entrambi inviano anche un’intestazione From (info@comparano.com), così c’è sempre qualcuno a cui scrivere.
3.Come autorizzarlo
Ne basta una qualsiasi; non servono tutte.
Confronta il token, non l’intera stringa. ComparanoFeedBot e ComparanoBot non cambiano mai. La versione dopo la barra sì: si muove a ogni nostro rilascio, e una regola sull’user agent completo smetterà di funzionare.
Cloudflare — WAF › Custom rules › Skip
(http.user_agent contains "ComparanoFeedBot") or (http.user_agent contains "ComparanoBot")ModSecurity / OWASP CRS
SecRule REQUEST_HEADERS:User-Agent "@contains ComparanoFeedBot" \
"id:1900001,phase:1,pass,nolog,ctl:ruleEngine=Off"nginx
map $http_user_agent $comparano {
default 0;
"~*ComparanoFeedBot" 1;
"~*ComparanoBot" 1;
}Apache
SetEnvIfNoCase User-Agent "ComparanoFeedBot" comparano
Allow from env=comparanoI plugin di sicurezza per WordPress — Wordfence, Sucuri, iThemes — hanno ciascuno una lista di autorizzazioni che accetta sia uno user agent sia un IP; aggiungi lì ComparanoFeedBot. A bloccarci è più spesso il limite di richieste per i crawler non in elenco, che tratta un singolo download di grandi dimensioni come un attacco.
I pannelli di hosting come cPanel, Plesk o DirectAdmin mettono di solito mod_security e un limitatore davanti al sito. Chiedi al tuo provider di autorizzare lo user agent per l’URL del feed: di norma è una riga di configurazione, e citare questa pagina di solito basta.
4.Perché non pubblichiamo un elenco di IP
Ci viene chiesto un elenco fisso di indirizzi abbastanza spesso da spiegare qui la risposta. I nostri lettori girano su infrastrutture i cui indirizzi cambiano, e un elenco superato fallisce in silenzio: il feed del negozio smette di funzionare e nulla dice perché. Il confronto sullo user agent continua invece a funzionare.
Se la vostra policy richiede indirizzi, scriveteci: troveremo una soluzione per la vostra configurazione anziché pubblicare un intervallo che tra un mese sarà sbagliato.
5.Come appare un blocco dal nostro lato
Un feed bloccato non fallisce in modo rumoroso per il commerciante. Registriamo lo stato, dopo alcuni tentativi segnamo il feed come non funzionante e gli scriviamo — ma il messaggio dice che il suo feed è irraggiungibile, ed è per questo che finisce col chiedere al proprio hosting anziché a noi. Queste sono le risposte che vediamo quando qualcosa davanti al negozio ci ferma.
| Stato | Di solito significa |
|---|---|
403 | Una regola del WAF, o una lista di autorizzazioni che non ci comprende. |
429 | Un limitatore che conta il nostro unico download come abuso. |
503 | Una pagina di verifica antibot. Non possiamo risolverla, quindi la trattiamo come indisponibilità. |
— | Nessuna risposta: un firewall che scarta la connessione invece di rifiutarla. |
6.Chiederci di smettere
Scarichiamo un feed perché un commerciante ce lo ha chiesto, quindi la via più rapida è che il negozio lo metta in pausa o lo rimuova dal proprio account Comparano. Se ritieni che stiamo richiedendo qualcosa che nessuno ha configurato, scrivici con una riga di log: la esamineremo lo stesso giorno.