Come consentire al crawler di Shoply AI di superare il tuo firewall

A brick firewall opens one gate so Shoply's crawler can carry website pages to the chat assistant

Shoply AI mantiene accurate le sue risposte leggendo regolarmente il tuo sito web. Se il tuo sito usa Cloudflare o un altro firewall o servizio di protezione dai bot, quel servizio potrebbe bloccare il crawler di Shoply. Quando succede, il chatbot continua a rispondere usando una vecchia copia del tuo sito.

La soluzione di solito è una sola regola: consentire le richieste il cui User-Agent contiene ShoplyAIBot. Questa guida spiega perché il crawler è necessario, come riconoscerlo e come consentirlo in Cloudflare e in altri firewall.

Chi deve farlo?

  • Proprietari di siti web con SiteChat. SiteChat è la chat e la ricerca di Shoply per qualsiasi sito web che non sia un negozio Shopify, inclusi i negozi Magento.
  • Agenzie e sviluppatori che gestiscono hosting, una CDN (rete di distribuzione dei contenuti) o le impostazioni di sicurezza di quei siti web.

I merchant che usano l’app Shopify normalmente non devono cambiare nulla. Shoply riceve i dati dei prodotti Shopify tramite l’API di Shopify, non effettuando la scansione della tua vetrina. Tuttavia, se hai aggiunto pagine di un sito web non Shopify come fonti di conoscenza, ad esempio un centro assistenza o un blog ospitato altrove, il firewall di quel sito potrebbe comunque bloccare Shoply. Vedi come insegnare a Shoply informazioni sul tuo negozio per sapere dove sono elencate quelle pagine.

Perché Shoply deve leggere il mio sito web?

Shoply legge le pagine che hai elencato nelle impostazioni di scansione affinché le risposte, i prezzi e i link del chatbot corrispondano al tuo sito live.

Per i negozi Magento, Shoply legge anche il tuo catalogo prodotti pubblico tramite l’endpoint GraphQL del tuo negozio (/graphql). Invia query di sola lettura sui prodotti per dettagli come nomi, SKU, prezzi, varianti e URL dei prodotti.

Il crawler non effettua mai l’accesso, non effettua mai ordini e non invia mai moduli. Per sapere cosa fa Shoply con questi contenuti, leggi quali informazioni Shoply usa per rispondere alle domande dei clienti.

Cosa succede se il crawler viene bloccato?

  • Le scansioni falliscono. Shoply non può recuperare le tue pagine o i dati dei prodotti.
  • L’AI continua a rispondere in base all’ultima scansione riuscita. I clienti potrebbero vedere prezzi vecchi, prodotti che hai rimosso e link obsoleti o errati. In un caso reale, un negozio è passato da un sito di sviluppo al dominio di produzione, ma il suo firewall ha bloccato il crawler, quindi il chatbot ha continuato a indirizzare i clienti al vecchio sito di sviluppo.
  • “Last updated … ago” smette di avanzare nella dashboard di amministrazione di Shoply.

Segnali comuni di un crawler bloccato

Nell’admin di Shoply, l’orario della scansione resta indietro. Nella dashboard, il tempo “Last updated at: … ago” sotto Content crawled by Shoply AI continua a crescere invece di azzerarsi ogni poche ore, ad esempio “770 hours ago” (circa un mese). Rimane indietro anche dopo aver fatto clic su Recrawl Now, perché una scansione bloccata non termina mai.

Se controlli i log del tuo firewall, il sintomo più comune è che Cloudflare restituisca HTTP 403 alle richieste di Shoply, in una di queste forme:

  • Error 1010, che significa che il proprietario del sito ha vietato la richiesta in base alla sua firma del browser. La soluzione indicata da Cloudflare per questo errore rimanda a Browser Integrity Check.
  • Una pagina di verifica “Just a moment…”, che un crawler non può completare.

Come riconosco il crawler di Shoply?

Ogni richiesta del crawler di Shoply usa questo User-Agent:

text
ShoplyAIBot/1.0 (https://shoplyai.ai; support@shoplyai.ai; For sites installed Shoply AI Search & Chatbot)

Scrivi le tue regole in modo che corrispondano al testo più breve ShoplyAIBot (per esempio, “User-Agent contains ShoplyAIBot”). In questo modo la tua regola continuerà a funzionare anche se il numero di versione cambia.

Consenti in base allo user agent, non all’indirizzo IP. Il crawler di Shoply non usa indirizzi IP fissi, quindi una allowlist IP non funzionerà in modo affidabile.

Come si comporta il crawler

  • Esegue la scansione solo dei siti che hai configurato in Shoply.
  • Rispetta robots.txt quando legge le pagine. Se il tuo robots.txt blocca una pagina, Shoply la salterà, quindi verifica che non blocchi le pagine da cui vuoi che l’AI impari.
  • È leggero per il tuo server: al massimo 2 richieste alla volta, con un ritardo di 2 secondi tra una richiesta e l’altra.
  • Il numero di pagine è limitato dal tuo piano Shoply.

Quando viene eseguito il crawler

  • Automaticamente secondo una pianificazione. La frequenza dipende dal tuo piano.
  • Quando fai clic su “Recrawl Now” nell’admin di Shoply.
  • Ogni 2 giorni finché le scansioni continuano a fallire. Shoply riprova automaticamente, quindi una volta aggiunta la regola di autorizzazione, il tentativo successivo o una nuova scansione manuale recupereranno il tuo sito.

Come consentire Shoply in Cloudflare?

In Cloudflare, crea una custom rule con azione Skip. Una regola di skip consente alle richieste corrispondenti di bypassare i controlli di sicurezza che altrimenti le bloccherebbero o le sottoporrebbero a verifica.

Passaggio 1: crea la regola di skip

  1. Nella dashboard di Cloudflare, apri il tuo sito web (zone) e vai su Security rules.

  2. Seleziona Create rule > Custom rules.

  3. In Rule name, inserisci un nome chiaro, ad esempio Allow Shoply AI crawler.

  4. In When incoming requests match, imposta:

    • Field: User Agent
    • Operator: contains
    • Value: ShoplyAIBot

    Se preferisci l’editor di espressioni, usa:

    text
    (http.user_agent contains "ShoplyAIBot")
  5. In Then take action > Choose action, seleziona Skip.

  6. Scegli cosa saltare (vedi la tabella qui sotto).

  7. Lascia attivata l’opzione Log matching requests. In questo modo le richieste di Shoply compariranno nei Security Events di Cloudflare, il che aiuta nella risoluzione dei problemi.

  8. Seleziona Deploy.

Passaggio 2: scegli cosa saltare

Opzione Skip in CloudflareSaltarla?Perché
Browser Integrity CheckSìProvoca l’errore 1010 per i crawler
Security LevelSìImpedisce ai controlli di Security Level di sottoporre il crawler a verifica
All Super Bot Fight Mode rulesSì, sui piani Pro e superioriSuper Bot Fight Mode può verificare o bloccare i crawler
User Agent BlockingSe lo usiRileva solo se hai creato regole di blocco basate sullo user agent
All rate limiting rulesSolo se i Security Events mostrano una regola di rate limiting che blocca ShoplyLa frequenza delle richieste di Shoply è bassa, ma un limite rigido può comunque intercettarla
All managed rulesSolo se i Security Events mostrano una regola gestita che blocca ShoplyMantiene attive per tutti gli altri le regole di Cloudflare basate sui modelli di attacco
All remaining custom rulesSe hai altre regole personalizzate che bloccano i botImpedisce che le tue regole personalizzate successive blocchino Shoply

Inizia con le righe contrassegnate con “Sì”. Se i Security Events di Cloudflare continuano a mostrare che le richieste di Shoply vengono bloccate o sottoposte a verifica, l’evento ti dirà quale funzionalità è intervenuta. Aggiungi quella funzionalità alla regola di skip.

Passaggio 3: metti la regola per prima

Cloudflare valuta le regole personalizzate in ordine, dalla prima all’ultima. Se una regola sopra la tua blocca o verifica la richiesta, la tua regola di skip non verrà mai eseguita. Sposta la regola di Shoply in cima all’elenco delle tue regole personalizzate.

Se usi Bot Fight Mode (piano Cloudflare Free)

Bot Fight Mode non può essere bypassato con una regola di skip. Cloudflare lo esegue separatamente dalle regole personalizzate, quindi le regole di skip e allow non hanno effetto su di esso. Hai due opzioni:

  • Disattivare Bot Fight Mode: vai su Security > Settings, filtra per Bot traffic e disattiva Bot fight mode.
  • Passare a un piano Pro o superiore e usare Super Bot Fight Mode, che supporta le regole di skip.

Se la modalità Under Attack è attiva

La modalità Under Attack mostra una pagina di verifica a ogni visitatore e i crawler non possono superarla. Cloudflare consiglia di usarla solo durante un attacco attivo. Shoply non potrà leggere il tuo sito finché non verrà disattivata.

È sicuro consentire uno user agent?

Qualsiasi client può dichiarare di essere ShoplyAIBot, quindi questa regola salta alcuni controlli bot per chiunque invii quel User-Agent. Per mantenere basso il rischio, salta solo le funzionalità che bloccano il crawler e mantieni attive le protezioni di login, checkout e admin. Shoply non ha mai bisogno di accedere a quelle aree.

Come consentire Shoply in altri firewall?

Il principio è lo stesso ovunque: consenti le richieste il cui User-Agent contiene ShoplyAIBot. I menu esatti variano a seconda del prodotto, quindi segui la documentazione del tuo fornitore per creare una regola di autorizzazione o eccezione. Alcuni punti comuni da controllare:

  • Cloud web application firewall (WAF) come Sucuri, AWS WAF e Akamai: aggiungi una regola di autorizzazione o eccezione che corrisponda all’header User-Agent.
  • Plugin di sicurezza WordPress come Wordfence: cerca impostazioni relative a blocco dei bot, rate limiting o blocco dello user agent.
  • Filtri a livello server come regole ModSecurity e blocchi bot forniti dalla tua società di hosting: inserisci lo user agent in whitelist oppure chiedi al tuo host di farlo.

Negozi Magento: assicurati che la regola copra anche le richieste POST a /graphql. Alcuni firewall trattano le richieste API separatamente dalle visualizzazioni di pagina. Se le pagine sono consentite ma /graphql è bloccato, il tuo catalogo prodotti non si aggiornerà.

Non fare affidamento su una allowlist IP. Il crawler di Shoply non usa indirizzi IP fissi.

Come verifico che abbia funzionato?

  1. Nell’admin di Shoply, fai clic su Recrawl Now.
  2. Attendi il completamento della scansione, quindi verifica che “Last updated” nella tua dashboard sia stato reimpostato a un orario recente.
  3. Fai una domanda al chatbot su un prodotto o una pagina che hai modificato di recente e conferma che la risposta e il link corrispondano al tuo sito live.

Puoi anche eseguire un controllo rapido dal tuo computer. Sostituisci https://your-site.com/ con l’indirizzo del tuo sito web:

bash
curl -I -A "ShoplyAIBot/1.0 (https://shoplyai.ai; support@shoplyai.ai; For sites installed Shoply AI Search & Chatbot)" https://your-site.com/

Una risposta HTTP/2 200 (o HTTP/1.1 200 OK) significa che la tua regola consente il passaggio a quello user agent. Un 403 significa che qualcosa lo sta ancora bloccando.

Questo test viene eseguito dall’indirizzo IP del tuo computer, non dai server di Shoply. Alcuni firewall trattano il traffico in modo diverso a seconda della provenienza, quindi la nuova scansione nell’admin di Shoply è la verifica finale.

Hai bisogno di aiuto?

Invia un’email a support@shoplyai.ai con l’indirizzo del tuo sito web, il firewall o provider di hosting che utilizzi e uno screenshot di qualsiasi richiesta bloccata nei log del tuo firewall. Ti preghiamo di non inviare password o chiavi API.