Kako dovoliti crawlerju Shoply AI skozi vaš požarni zid

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

Shoply AI ohranja svoje odgovore točne tako, da redno bere vašo spletno stran. Če vaše spletno mesto uporablja Cloudflare ali drug požarni zid oziroma storitev za zaščito pred boti, lahko ta storitev blokira Shoplyjev crawler. Ko se to zgodi, klepetalni bot še naprej odgovarja na podlagi stare kopije vašega spletnega mesta.

Rešitev je običajno eno pravilo: dovolite zahtevke, katerih User-Agent vsebuje ShoplyAIBot. Ta vodnik pojasnjuje, zakaj je crawler potreben, kako ga prepoznati in kako ga dovoliti v Cloudflare in drugih požarnih zidovih.

Kdo mora to urediti?

  • Lastniki spletnih mest SiteChat. SiteChat je Shoplyjev klepet in iskanje za katerokoli spletno mesto, ki ni Shopify trgovina, vključno z Magento trgovinami.
  • Agencije in razvijalci, ki upravljajo gostovanje, CDN (omrežje za dostavo vsebin) ali varnostne nastavitve za ta spletna mesta.

Trgovcem, ki uporabljajo Shopify aplikacijo, običajno ni treba ničesar spreminjati. Shoply prejema podatke o izdelkih Shopify prek Shopifyjevega API-ja, ne s crawlanjem vaše storefront trgovine. Če pa ste kot vire znanja dodali strani z ne-Shopify spletnega mesta, kot je center za pomoč ali blog, gostovan drugje, lahko požarni zid tega spletnega mesta še vedno blokira Shoply. Oglejte si kako naučiti Shoply o vaši trgovini, da vidite, kje so te strani navedene.

Zakaj mora Shoply prebrati moje spletno mesto?

Shoply bere strani, ki ste jih navedli v svojih nastavitvah crawlanja, da se odgovori, cene in povezave klepetalnega bota ujemajo z vašim živim spletnim mestom.

Za Magento trgovine Shoply bere tudi vaš javni katalog izdelkov prek GraphQL endpointa vaše trgovine (/graphql). Pošilja poizvedbe izdelkov samo za branje za podrobnosti, kot so imena, SKU-ji, cene, variante in URL-ji izdelkov.

Crawler se nikoli ne prijavi, nikoli ne odda naročila in nikoli ne pošlje obrazcev. Če želite izvedeti, kaj Shoply počne s to vsebino, preberite katere informacije Shoply uporablja za odgovarjanje na vprašanja strank.

Kaj se zgodi, če je crawler blokiran?

  • Crawl-i ne uspejo. Shoply ne more pridobiti vaših strani ali podatkov o izdelkih.
  • AI še naprej odgovarja na podlagi zadnjega uspešnega crawla. Kupci lahko vidijo stare cene, izdelke, ki ste jih odstranili, ter zastarele ali napačne povezave. V enem resničnem primeru se je trgovina preselila z razvojnega mesta na produkcijsko domeno, vendar je njen požarni zid blokiral crawler, zato je klepetalni bot še naprej usmerjal kupce na staro razvojno spletno mesto.
  • “Last updated … ago” se preneha posodabljati na vaši skrbniški nadzorni plošči Shoply.

Pogosti znaki blokiranega crawlerja

V Shoply adminu čas crawlanja zaostaja. Na nadzorni plošči čas “Last updated at: … ago” pod Content crawled by Shoply AI nenehno raste, namesto da bi se vsakih nekaj ur ponastavil, na primer “770 hours ago” (približno mesec dni). Zaostanek ostane tudi potem, ko kliknete Recrawl Now, ker blokiran crawl nikoli ni dokončan.

Če preverite dnevnike svojega požarnega zidu, je običajen simptom to, da Cloudflare vrne HTTP 403 za Shoplyjeve zahtevke, v eni od teh oblik:

  • Error 1010, kar pomeni, da je lastnik spletnega mesta prepovedal zahtevek na podlagi njegovega browser signature. Cloudflarejeva lastna rešitev za to napako kaže na Browser Integrity Check.
  • Stran z izzivom “Just a moment…”, ki je crawler ne more dokončati.

Kako prepoznam Shoplyjev crawler?

Vsak zahtevek Shoplyjevega crawlerja uporablja ta User-Agent:

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

Svoja pravila napišite tako, da se ujemajo s krajšim besedilom ShoplyAIBot (na primer, “User-Agent vsebuje ShoplyAIBot”). Tako bo vaše pravilo še naprej delovalo tudi, če se številka različice spremeni.

Dovolite po user agentu, ne po IP naslovu. Shoplyjev crawler ne uporablja fiksnih IP naslovov, zato IP seznam dovoljenih naslovov ne bo zanesljivo deloval.

Kako se crawler obnaša

  • Crawla samo spletna mesta, ki ste jih nastavili v Shoply.
  • Upošteva robots.txt pri branju strani. Če vaš robots.txt blokira stran, jo bo Shoply preskočil, zato preverite, da ne blokira strani, iz katerih želite, da se AI uči.
  • Vaš strežnik obremenjuje nežno: največ 2 zahtevka hkrati, z 2-sekundnim zamikom med zahtevki.
  • Število strani je omejeno glede na vaš Shoply paket.

Kdaj crawler teče

  • Samodejno po urniku. Kako pogosto, je odvisno od vašega paketa.
  • Ko kliknete “Recrawl Now” v Shoply adminu.
  • Vsaka 2 dni, dokler crawl-i še naprej ne uspevajo. Shoply samodejno poskuša znova, zato bo po dodanem pravilu za dovoljenje naslednji ponovni poskus ali ročni recrawl zajel vaše spletno mesto.

Kako dovolim Shoply v Cloudflare?

V Cloudflare ustvarite custom rule z dejanjem Skip. Pravilo skip omogoča, da se ujemajoči zahtevki izognejo varnostnim preverjanjem, ki bi jih sicer blokirala ali jim prikazala izziv.

1. korak: Ustvarite skip rule

  1. Na nadzorni plošči Cloudflare odprite svoje spletno mesto (zone) in pojdite na Security rules.

  2. Izberite Create rule > Custom rules.

  3. V Rule name vnesite jasno ime, na primer Allow Shoply AI crawler.

  4. Pod When incoming requests match nastavite:

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

    Če raje uporabljate urejevalnik izrazov, uporabite:

    text
    (http.user_agent contains "ShoplyAIBot")
  5. Pod Then take action > Choose action izberite Skip.

  6. Izberite, kaj želite preskočiti (glejte spodnjo tabelo).

  7. Pustite Log matching requests vklopljen. Shoplyjevi zahtevki bodo nato prikazani v Cloudflarejevih Security Events, kar pomaga pri odpravljanju težav.

  8. Izberite Deploy.

2. korak: Izberite, kaj želite preskočiti

Možnost Skip v CloudflarePreskočiti?Zakaj
Browser Integrity CheckDaPovzroča napako 1010 za crawlerje
Security LevelDaUstavi preverjanja Security Level, da ne izzivajo crawlerja
All Super Bot Fight Mode rulesDa, pri Pro paketih in višjeSuper Bot Fight Mode lahko crawlerje izzove ali blokira
User Agent BlockingČe ga uporabljatePomembno samo, če ste ustvarili pravila za blokiranje user-agentov
All rate limiting rulesSamo če Security Events kaže, da pravilo za omejevanje hitrosti blokira ShoplyShoplyjeva hitrost zahtevkov je nizka, vendar jo stroga omejitev še vedno lahko ujame
All managed rulesSamo če Security Events kaže, da upravljano pravilo blokira ShoplyOhrani Cloudflarejeva pravila za vzorce napadov aktivna za vse ostale
All remaining custom rulesČe imate druga custom pravila, ki blokirajo botePrepreči, da bi vaša poznejša custom pravila blokirala Shoply

Začnite z vrsticami z “Da”. Če Cloudflarejevi Security Events še vedno kažejo, da so Shoplyjevi zahtevki blokirani ali izzvani, vam bo dogodek povedal, katera funkcija je ukrepala. To funkcijo dodajte v skip rule.

3. korak: Postavite pravilo na prvo mesto

Cloudflare ocenjuje custom pravila po vrstnem redu, od prvega do zadnjega. Če pravilo nad vašim blokira zahtevek ali mu prikaže izziv, se vaše skip rule nikoli ne izvede. Premaknite Shoplyjevo pravilo na vrh seznama custom pravil.

Če uporabljate Bot Fight Mode (Cloudflare Free plan)

Bot Fight Mode ni mogoče obiti s skip rule. Cloudflare ga izvaja ločeno od custom pravil, zato skip in allow pravila nanj ne vplivajo. Imate dve možnosti:

  • Izklopite Bot Fight Mode: pojdite na Security > Settings, filtrirajte po Bot traffic in izklopite Bot fight mode.
  • Nadgradite na Pro plan ali višje in uporabite Super Bot Fight Mode, ki podpira skip rules.

Če je vklopljen Under Attack mode

Under Attack mode prikaže stran z izzivom vsakemu obiskovalcu, crawlerji pa je ne morejo prestati. Cloudflare priporoča, da ga uporabljate le med aktivnim napadom. Shoply ne bo mogel brati vašega spletnega mesta, dokler ga ne izklopite.

Ali je varno dovoliti user agent?

Vsak odjemalec lahko trdi, da je ShoplyAIBot, zato to pravilo preskoči nekatera preverjanja botov za vsakogar, ki pošlje ta User-Agent. Da bo tveganje majhno, preskočite samo funkcije, ki blokirajo crawler, ter ohranite zaščite za prijavo, checkout in admin. Shoply nikoli ne potrebuje dostopa do teh območij.

Kako dovolim Shoply v drugih požarnih zidovih?

Načelo je povsod enako: dovolite zahtevke, katerih User-Agent vsebuje ShoplyAIBot. Natančni meniji se razlikujejo glede na izdelek, zato sledite dokumentaciji svojega ponudnika za ustvarjanje pravila za dovoljenje ali izjemo. Pogosta mesta za preverjanje:

  • Požarni zidovi za spletne aplikacije v oblaku (WAF-i), kot so Sucuri, AWS WAF in Akamai: dodajte pravilo za dovoljenje ali izjemo, ki se ujema z glavo User-Agent.
  • Varnostni vtičniki za WordPress, kot je Wordfence: poiščite nastavitve za blokiranje botov, omejevanje hitrosti ali blokiranje user-agentov.
  • Filtri na ravni strežnika, kot so pravila ModSecurity, in blokatorji botov, ki jih nudi vaše gostovanje: dodajte user agent na seznam dovoljenih ali prosite svojega ponudnika gostovanja, da to stori.

Magento trgovine: poskrbite, da pravilo pokriva tudi POST zahtevke na /graphql. Nekateri požarni zidovi obravnavajo API zahtevke ločeno od ogledov strani. Če so strani dovoljene, /graphql pa blokiran, se vaš katalog izdelkov ne bo posodabljal.

Ne zanašajte se na IP seznam dovoljenih naslovov. Shoplyjev crawler ne uporablja fiksnih IP naslovov.

Kako preverim, da je uspelo?

  1. V Shoply adminu kliknite Recrawl Now.
  2. Počakajte, da se crawl zaključi, nato preverite, da se je “Last updated” na vaši nadzorni plošči ponastavil na nedaven čas.
  3. Vprašajte klepetalni bot o izdelku ali strani, ki ste jo pred kratkim spremenili, in potrdite, da se odgovor in povezava ujemata z vašim živim spletnim mestom.

Hiter preizkus lahko zaženete tudi iz svojega računalnika. Zamenjajte https://your-site.com/ z naslovom svojega spletnega mesta:

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

Odgovor HTTP/2 200 (ali HTTP/1.1 200 OK) pomeni, da vaše pravilo dovoli ta user agent. 403 pomeni, da ga nekaj še vedno blokira.

Ta test se izvaja z IP naslova vašega računalnika, ne s Shoplyjevih strežnikov. Nekateri požarni zidovi promet obravnavajo različno glede na to, od kod prihaja, zato je recrawl v Shoply adminu končno preverjanje.

Potrebujete pomoč?

Pošljite e-pošto na support@shoplyai.ai z naslovom svojega spletnega mesta, požarnim zidom ali ponudnikom gostovanja, ki ga uporabljate, ter posnetkom zaslona kakršnegakoli blokiranega zahtevka v dnevnikih vašega požarnega zidu. Prosimo, ne pošiljajte gesel ali API ključev.