Crawlere precum GPTBot, OAI-SearchBot sau ClaudeBot pot accesa automat paginile unui website. Unele sunt folosite pentru dezvoltarea modelelor AI, altele pentru funcții de căutare, iar altele accesează o pagină în urma unei solicitări făcute de un utilizator.
Dacă nu dorești anumite tipuri de crawling sau observi un volum de trafic automatizat pe care vrei să îl limitezi, ai mai multe metode la dispoziție: robots.txt, reguli .htaccess, Cloudflare și mecanisme aplicate la nivelul serverului.
Important este să înțelegi diferența dintre ele. Un fișier robots.txt transmite o instrucțiune crawlerului, în timp ce o regulă HTTP poate refuza efectiv request-ul.
Nu toți boții AI au același rol
Înainte să blochezi un crawler, trebuie să știi ce face.
OpenAI documentează separat:
- GPTBot – crawler pentru conținut care poate fi utilizat la dezvoltarea și antrenarea modelelor generative;
- OAI-SearchBot – utilizat pentru includerea website-urilor în funcțiile de căutare ChatGPT;
- ChatGPT-User – poate accesa o pagină ca urmare a unei acțiuni inițiate de un utilizator ChatGPT.
Anthropic utilizează o separare asemănătoare:
- ClaudeBot – asociat colectării de conținut pentru dezvoltarea modelelor;
- Claude-SearchBot – asociat funcțiilor de căutare;
- Claude-User – accesarea website-urilor la solicitarea utilizatorilor Claude.
De aceea, nu este recomandat să pui toate aceste User-Agent-uri într-o singură listă și să le blochezi fără să analizezi ce funcționalitate pierzi.
De exemplu, OpenAI permite să restricționezi GPTBot și să păstrezi OAI-SearchBot activ pentru ca paginile să poată apărea în rezultatele ChatGPT Search.
Google-Extended funcționează diferit
Google-Extended nu este un crawler HTTP separat.
Este un token utilizat în robots.txt pentru a controla anumite utilizări ale conținutului de către produsele AI Google. Crawling-ul este efectuat prin User-Agent-urile Google existente.
Din acest motiv, o regulă de tip:
User-agent: Google-Extended
Disallow: /
este validă pentru controlul respectiv, însă nu trebuie să cauți un User-Agent HTTP numit „Google-Extended” în access log.
Google precizează că utilizarea Google-Extended nu afectează includerea website-ului în Google Search și nu reprezintă un semnal de ranking.
robots.txt: cea mai simplă metodă de control
Fișierul robots.txt este accesibil în mod obișnuit la:
https://exemplu.ro/robots.txt
Pe un website găzduit în cPanel îl poți crea sau modifica din:
cPanel → Files → File Manager
→ document root al domeniului
→ robots.txt
Dacă dorești să soliciți GPTBot să nu acceseze website-ul:
User-agent: GPTBot
Disallow: /
Pentru ClaudeBot:
User-agent: ClaudeBot
Disallow: /
Sau le poți combina:
User-agent: GPTBot
Disallow: /
User-agent: ClaudeBot
Disallow: /
Poți bloca doar o anumită zonă
Nu trebuie neapărat să restricționezi întregul website.
De exemplu:
User-agent: GPTBot
Disallow: /arhiva/
În acest caz îi soliciți crawlerului să nu acceseze URL-urile din directorul respectiv.
robots.txt nu este un firewall
Aceasta este diferența esențială.
robots.txt spune:
Te rog să nu accesezi această zonă.
Nu spune:
Serverul nu îți permite accesul.
Un crawler conform va respecta regula. Un bot agresiv sau un script care ignoră robots.txt poate continua să trimită request-uri.
De asemenea, robots.txt este un fișier public și nu trebuie utilizat pentru protejarea informațiilor confidențiale.
Dacă un director conține date care nu trebuie să fie accesibile public, soluția corectă este autentificarea sau restricționarea reală a accesului, nu doar adăugarea sa în robots.txt.
Cum blochezi efectiv un bot prin .htaccess?
Pe serverele NameBox care utilizează LiteSpeed Enterprise, regulile compatibile Apache din .htaccess pot fi utilizate pentru controlul request-urilor.
Fișierul poate fi găsit din:
cPanel → File Manager
→ Settings
→ Show Hidden Files (dotfiles)
Înainte să îl modifici, salvează o copie a fișierului .htaccess.
Pentru blocarea GPTBot:
<IfModule LiteSpeed>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "GPTBot" [NC]
RewriteRule ^ - [F,L]
</IfModule>
Dacă User-Agent-ul corespunde, serverul va returna:
403 Forbidden
Codul 403 înseamnă că serverul a înțeles request-ul, dar refuză accesul.
Blocarea mai multor crawlere
Poți include mai multe User-Agent-uri:
<IfModule LiteSpeed>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "GPTBot|ClaudeBot" [NC]
RewriteRule ^ - [F,L]
</IfModule>
Această regulă verifică User-Agent-ul declarat și refuză request-ul dacă găsește GPTBot sau ClaudeBot.
Pentru dezactivare este suficient să elimini regulile adăugate sau să restaurezi copia anterioară a fișierului .htaccess.
Poți restricționa doar anumite URL-uri
Dacă nu dorești să blochezi crawlerul pe întregul website, regula poate fi limitată la o anumită zonă:
<IfModule LiteSpeed>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "GPTBot" [NC]
RewriteRule ^arhiva/ - [F,L]
</IfModule>
Astfel, celelalte pagini rămân accesibile.
User-Agent-ul poate fi falsificat
Regulile de mai sus sunt utile, dar au o limitare importantă.
User-Agent-ul este trimis chiar de client.
Un script poate pretinde foarte ușor că este:
User-Agent: GPTBot
sau chiar:
User-Agent: Googlebot
Din acest motiv, identificarea unui User-Agent într-un log nu confirmă singură identitatea operatorului.
OpenAI publică intervalele IP utilizate de crawlerele sale. Pentru investigații mai importante, IP-ul trebuie verificat folosind informațiile oficiale ale operatorului.
Poți consulta și ghidul nostru Boții AI îți consumă resursele? Cum îi identifici în cPanel, unde explicăm mai detaliat analiza User-Agent-urilor și a traficului.
Cum blochezi un bot în Cloudflare?
Dacă domeniul utilizează Cloudflare ca proxy, request-ul poate fi filtrat înainte să ajungă la serverul de hosting.
Cloudflare WAF Custom Rules sunt disponibile inclusiv pe planul Free, însă numărul de reguli și funcțiile avansate diferă în funcție de plan.
În prezent, planul Free permite până la 5 Custom Rules la nivel de zonă.
Pentru GPTBot poți crea o regulă din:
Cloudflare
→ Security
→ Security rules
→ Create rule
→ Custom rules
În Expression Editor:
http.user_agent contains "GPTBot"
Iar acțiunea:
Block
Cloudflare va opri request-ul înainte ca acesta să ajungă la serverul origin.
Pentru două crawlere:
(http.user_agent contains "GPTBot" or http.user_agent contains "ClaudeBot")
Operatorul contains este case-sensitive, de aceea trebuie utilizată forma corectă a User-Agent-ului.
Block, Managed Challenge sau Skip?
Cloudflare oferă mai multe acțiuni în Custom Rules.
Block refuză request-ul care corespunde regulii.
Managed Challenge permite Cloudflare să decidă ce tip de verificare trebuie aplicată clientului. Este mai potrivit atunci când nu ești sigur că tot traficul corespunzător trebuie blocat.
Skip are un scop diferit: permite request-ului să sară peste anumite mecanisme de securitate ulterioare. Nu trebuie tratat ca o simplă regulă „Allow”.
Folosirea greșită a Skip poate permite unui request să evite protecții pe care doreai să le păstrezi active.
Ce poți face cu Rate Limiting?
Uneori nu vrei să blochezi complet un serviciu, ci doar să reduci request-urile excesive.
Aici intervine Rate Limiting.
Disponibilitatea criteriilor diferă însă între planurile Cloudflare.
De exemplu, în configurația actuală Cloudflare, planul Free oferă o regulă de Rate Limiting și permite criterii mai simple precum path-ul și statusul de Verified Bot. Filtrarea Rate Limiting direct după User-Agent este disponibilă pe planuri superioare.
Din acest motiv, nu trebuie presupus că aceeași regulă de rate limiting poate fi construită pe orice abonament Cloudflare.
Cloudflare oferă și funcții dedicate pentru administrarea crawlerelor AI, iar opțiunea Block AI bots este documentată ca fiind disponibilă pe toate planurile. Funcțiile și controalele suplimentare pot varia în funcție de cont și configurație.
Atenție la API-uri, checkout și webhook-uri
Orice regulă de securitate prea generală poate produce efecte secundare.
În special pe un magazin WooCommerce trebuie verificate:
- checkout-ul;
- notificările procesatorului de plăți;
- webhook-urile;
- API-urile;
- integrările ERP;
- serviciile de curierat;
- instrumentele de monitorizare.
De aceea este recomandat să restricționezi un User-Agent sau un comportament concret, nu să blochezi generic „toți boții”.
Ce poate controla utilizatorul și ce ține de administrator?
Pe un cont cPanel, utilizatorul poate administra în mod obișnuit:
- robots.txt;
- fișierele website-ului;
- .htaccess;
- regulile Cloudflare, dacă domeniul este administrat în propriul cont Cloudflare;
- Raw Access Logs, dacă funcția este disponibilă.
Configurații precum regulile globale LiteSpeed, politica Imunify360 sau limitele generale CloudLinux sunt administrate la nivelul serverului.
CloudLinux nu este un firewall pentru boți. În acest context, rolul său este să izoleze conturile și să limiteze resurse precum CPU, memoria, I/O, IOPS și Entry Processes.
Imunify360 și ModSecurity sunt componente de securitate care pot bloca request-uri considerate malițioase, dar un crawler AI legitim nu reprezintă automat un atac.
Pentru detalii despre acest nivel de protecție poți consulta articolul ModSecurity în cPanel și eroarea 403.
Cum verifici dacă regula funcționează?
După modificarea .htaccess, regula poate fi testată cu curl:
curl -I -A "GPTBot" https://exemplu.ro/
Dacă regula de blocare funcționează, ar trebui să primești un răspuns de tip:
HTTP/2 403
Interpretarea celor mai relevante coduri este:
200 OK
Request permis
403 Forbidden
Request blocat / acces refuzat
429 Too Many Requests
Request limitat printr-un mecanism de rate limiting
Important: acest test nu demonstrează că ești GPTBot. Doar trimite antetul:
User-Agent: GPTBot
și verifică dacă regula reacționează corect la el.
Pentru eliminarea regulii, șterge configurația adăugată și testează din nou website-ul.
Verifică și Raw Access Logs
În cPanel poți verifica request-urile din:
cPanel → Metrics → Raw Access
Logurile te ajută să vezi IP-ul, URL-ul, codul HTTP și User-Agent-ul.
Dacă ai nevoie de un ghid complet, vezi Trafic website în cPanel: AWStats și Logs.
Pentru utilizatorii care administrează un VPS cu acces root, verificarea poate fi realizată și direct în logurile domeniului, dar pentru un cont shared Raw Access este suficient pentru majoritatea verificărilor inițiale.
Merită să blochezi toți boții AI?
În general, nu este necesar.
Blocarea poate avea sens dacă un crawler:
- generează un volum excesiv de request-uri;
- accesează zone pe care nu dorești să le expui crawlingului;
- produce un impact măsurabil asupra website-ului;
- este utilizat într-un scop pentru care nu dorești ca materialele tale să fie disponibile.
Dar trebuie luat în calcul și efectul asupra vizibilității.
De exemplu, restricționarea GPTBot și OAI-SearchBot reprezintă două decizii diferite. Primul este asociat dezvoltării modelelor, iar cel de-al doilea funcțiilor de căutare ChatGPT.
O abordare mai bună decât blocarea automată a tuturor crawlerelor este:
Identifică crawlerul
↓
Verifică scopul lui
↓
Analizează traficul
↓
Alege robots.txt sau blocare HTTP
↓
Testează regula
↓
Monitorizează rezultatul
Folosește nivelul potrivit de control
Dacă vrei doar să comunici unui crawler legitim că nu dorești crawling, începe cu robots.txt.
Dacă vrei ca request-ul să fie refuzat efectiv, folosește o regulă .htaccess sau un WAF precum Cloudflare.
Dacă problema este un volum excesiv de request-uri, poate fi mai potrivit un mecanism de rate limiting decât blocarea permanentă.
Iar dacă observi trafic neobișnuit, verifică mai întâi sursa în loguri înainte să aplici reguli generale.
Pentru mai multe detalii despre relația dintre server web și fișierele .htaccess poți consulta articolul LiteSpeed vs Apache.
Pe pagina noastră HelpDesk găsiți multe alte tutoriale utile pentru a gestiona mai ușor contul dvs. cPanel.