| 开发者 | Imedes |
|---|---|
| 更新时间 | 2026年9月7日 19:00 |
| PHP版本: | 8.1 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv3 |
| 版权网址: | 版权信息 |
GPTBot, ClaudeBot or PerplexityBot is only a claim. User-Agent strings can be changed freely, so they do not prove that a request actually came from OpenAI, Anthropic or Perplexity.
ABV checks supported AI bot claims against provider-published network information and, where available, cryptographic HTTP Message Signatures. Verified requests are allowed to continue normally. Requests that claim a supported identity but fail verification are blocked with HTTP status 403.
ABV is not a general-purpose bot blocker or web application firewall. It focuses on one question:
Is this request really coming from the AI agent it claims to be?
Why verify AI bots instead of simply blocking them?
Blocking all AI bots is a valid policy for a site that does not want any AI access.
ABV is intended for sites that want to distinguish legitimate AI traffic from impersonation. A site owner may want to allow a legitimate AI crawler or user-directed AI agent while rejecting requests that only copy a known AI bot name.
Verification also matters when legitimate AI agents receive different treatment from generic crawlers or scraping tools. For example, a site may intentionally permit a verified AI agent to access content that is restricted for ordinary scrapers. Without verification, a scraper could simply copy that AI bot's User-Agent and attempt to receive the same access.
ABV does not create special access rights and does not decide which content an AI provider may access. It verifies the identity claim so that other access rules do not have to trust the User-Agent alone.
Why isn't a firewall or security plugin enough?
Using Cloudflare, Wordfence or another CDN, web application firewall or WordPress security plugin does not by itself mean that AI bot identities are being verified.
Traditional security tools are primarily designed to detect malicious requests, exploits, abusive behavior and other known attack patterns. A request that simply presents itself as GPTBot, ClaudeBot or another recognized AI agent may not look malicious at all.
The identity problem is different: a request can behave normally while still using a false User-Agent.
Some infrastructure and security providers offer their own verified-bot features, depending on the service, plan and configuration in use. Other bot-detection features may identify AI crawlers primarily from their User-Agent or general request behavior.
ABV performs identity verification directly for its supported AI bot claims at the WordPress origin. It checks whether the claimed identity can actually be validated against provider-published verification data instead of assuming that an AI bot name in the User-Agent is genuine.
ABV therefore complements a firewall, security plugin or CDN rather than replacing one. These tools answer different security questions.
Can fake AI bots create unnecessary server load?
Yes. Fake AI bot traffic is not only an identity problem. It can also cause unnecessary work at the WordPress origin.
A request using a supported AI bot User-Agent can target normal pages, outdated URLs, random paths or non-existent resources. If such a request is routed to PHP and WordPress, WordPress may still bootstrap, load plugins and process routing before eventually returning a 404 response.
ABV verifies supported AI bot claims before the normal WordPress request continues. If the claimed identity fails verification, ABV blocks the request with HTTP status 403 at the verification gate. This can reduce unnecessary WordPress processing caused by spoofed AI bot requests, including requests for URLs or resources that do not exist.
If a web server, CDN or other upstream layer handles a missing resource before the request reaches WordPress, ABV is not involved in that request. In that case there is also no WordPress execution for ABV to avoid.
ABV is not a rate limiter or DDoS protection system. Its performance benefit is limited to spoofed supported AI bot claims that actually reach the ABV verification gate.
How ABV works
For supported AI bot claims, ABV performs identity verification before the normal request continues.
Depending on the supported agent, verification can include:
No. A supported AI bot request that verifies successfully is allowed to continue normally. ABV blocks requests that claim a supported AI bot identity but fail the corresponding verification.
Blocking all AI bots is a valid policy if a site does not want AI access. ABV is for sites that want to distinguish legitimate AI traffic from impersonation. This makes it possible to allow genuine supported AI agents without automatically trusting every request that uses their names.
Yes. A User-Agent can be changed freely and is not proof of identity. A scraper can send a request using a known AI bot User-Agent. ABV verifies supported claims instead of trusting that string by itself.
An identity claim is only worth faking if it is worth something. Someone impersonating an AI bot picks the identity most likely to grant the desired treatment — meaning the most recognized and most trusted names, not obscure or low-traffic crawlers. ABV therefore focuses verification on the AI bot identities most likely to be impersonated, rather than attempting to cover every crawler that claims to be AI-related.
Yes. That is one reason to verify identity before applying access rules. A site may choose to allow a verified AI agent where generic crawlers or scraping tools are restricted. Without verification, a scraper could attempt to obtain the same treatment simply by copying the AI bot's User-Agent. ABV itself does not grant special content permissions. It only verifies the supported identity claim. The site's own rules still decide what a verified agent may access.
Yes, depending on configuration. The presence of QUIC.cloud does not by itself make a site incompatible with ABV. Using QUIC.cloud for asset caching or other services that still allow relevant main document requests to reach the origin does not prevent ABV from operating. The incompatible case is QUIC.cloud CDN caching of the main document. ABV's requirement test checks the public main document for the QUIC.cloud cache header. If that cache layer is active for the main document, the requirement is blocked because the request can be answered before WordPress and ABV receive it. The issue is main-document caching before the origin, not QUIC.cloud itself.
The same principle applies. Cloudflare or another CDN is not inherently incompatible with ABV. Asset caching, DNS, security features and other proxy services can be used normally as long as the relevant main document requests still reach the origin. If an upstream cache is active for the main document, ABV cannot reliably guarantee that every supported AI request reaches the verification gate. The requirement test therefore checks for main-document cache indicators rather than treating CDN presence alone as a failure.
No. ABV verifies the main request handled by WordPress/PHP. Cached CSS, JavaScript, fonts, images and other static assets do not need to pass through ABV and do not interfere with identity verification.
The underlying issue is the same: ABV cannot verify a request that is answered from page cache before the verification gate runs. ABV therefore installs origin-side compatibility rules for supported AI bot claims and the supported OpenAI Signature-Agent. LiteSpeed/LSCache receives a native no-cache flag. Apache rewrite-based page caches are bypassed by routing matching main-document requests to WordPress before their static cache rules can serve HTML. This covers the rewrite-cache modes used by WP Rocket, WP Super Cache Expert mode, W3 Total Cache Disk: Enhanced and WP Fastest Cache, in addition to LiteSpeed/LSCache. If ABV blocks a request, the 403 response is also sent with no-cache headers. An upstream CDN cache is a separate layer. ABV cannot control an edge cache in the same way, so main-document caching at that layer must be configured so that requests requiring verification still reach the origin.
Yes. Spoofed AI bot requests can target valid pages as well as outdated, random or non-existent URLs. When those requests reach PHP and WordPress, they can still trigger WordPress processing even if the final result is only a 404 response. ABV blocks failed supported identity claims at its early verification gate before the normal WordPress request continues. This can avoid unnecessary WordPress execution for those fake AI bot requests. Requests that are answered by the web server, CDN or another upstream layer before they reach WordPress are outside ABV's request path.
No. Supported AI bot requests are written to a local log file first and imported into the database once per day. This avoids a database write on every verified AI bot request. A manual import is also available from the ABV admin page.
Imported request records are retained for 30 days. Expired records are removed automatically whenever the daily or manual log import runs. The request view also provides a Delete all request data action that removes both imported database records and pending ABV request-log entries.
ABV performs a fresh provider-data update when verification is enabled, then refreshes the data once per week through WP-Cron. A manual update is also available from the Provider Data tab.
ABV will not enable if the required fresh update fails. Once ABV is already running, a failed scheduled update does not replace previously validated data with an incomplete or invalid data set. The last usable provider data remains available until a later update succeeds.
Yes. The PHP Sodium extension is required for the supported OpenAI Ed25519 signature verification. ABV cannot enable the verification gate if the required Sodium function is unavailable.
No. ABV contacts provider endpoints only to retrieve public network data and signature verification keys. It does not send stored ABV request logs, WordPress posts, pages or other site content to those providers.
No. ABV verifies the supported AI bot identities listed above. It is not intended to classify, rate-limit or block every crawler, scraper or malicious request on a WordPress site.