-
Home
-
User Agent Directory
- YandexAccessibilityBot
YandexAccessibilityBot
Yandex •
Web Crawler
What is YandexAccessibilityBot?
Yandex's robot list says YandexAccessibilityBot downloads pages to check their accessibility for users and sends no more than three requests per second to a site. The same list marks it as not taking general robots.txt rules into account. It is a testing agent, not the main Yandex search-index crawler.
User Agent String
Mozilla/5.0 (compatible; YandexAccessibilityBot/3.0; +http://yandex.com/bots)
How to Control YandexAccessibilityBot
Block Completely
To prevent YandexAccessibilityBot from accessing your entire website, add this to your robots.txt file:
# Block YandexAccessibilityBot
User-agent: YandexAccessibilityBot
Disallow: /
Block Specific Directories
To restrict access to certain parts of your site while allowing others:
User-agent: YandexAccessibilityBot
Disallow: /admin/
Disallow: /private/
Disallow: /wp-admin/
Allow: /public/
Set Crawl Delay
To slow down the crawl rate (note: not all bots respect this directive):
User-agent: YandexAccessibilityBot
Crawl-delay: 10
How to Verify YandexAccessibilityBot
Verification Method:
Check the source with Yandex's reverse-DNS and forward-DNS verification procedure; the user-agent alone is not sufficient.
Check the source with Yandex's reverse-DNS and forward-DNS verification procedure; the user-agent alone is not sufficient.
Learn more in the official documentation.
Detection Patterns
Multiple ways to detect YandexAccessibilityBot in your application:
Basic Pattern
/YandexAccessibilityBot/i
Strict Pattern
/^Mozilla\/5\.0 \(compatible; YandexAccessibilityBot\/3\.0; \+http\:\/\/yandex\.com\/bots\)$/
Flexible Pattern
/YandexAccessibilityBot[\s\/]?[\d\.]*?/i
Vendor Match
/.*Yandex.*YandexAccessibilityBot/i
Implementation Examples
// PHP Detection for YandexAccessibilityBot
function detect_yandexaccessibilitybot() {
$user_agent = $_SERVER['HTTP_USER_AGENT'] ?? '';
$pattern = '/YandexAccessibilityBot/i';
if (preg_match($pattern, $user_agent)) {
// Log the detection
error_log('YandexAccessibilityBot detected from IP: ' . $_SERVER['REMOTE_ADDR']);
// Set cache headers
header('Cache-Control: public, max-age=3600');
header('X-Robots-Tag: noarchive');
// Optional: Serve cached version
if (file_exists('cache/' . md5($_SERVER['REQUEST_URI']) . '.html')) {
readfile('cache/' . md5($_SERVER['REQUEST_URI']) . '.html');
exit;
}
return true;
}
return false;
}
# Python/Flask Detection for YandexAccessibilityBot
import re
from flask import request, make_response
def detect_yandexaccessibilitybot():
user_agent = request.headers.get('User-Agent', '')
pattern = r'YandexAccessibilityBot'
if re.search(pattern, user_agent, re.IGNORECASE):
# Create response with caching
response = make_response()
response.headers['Cache-Control'] = 'public, max-age=3600'
response.headers['X-Robots-Tag'] = 'noarchive'
return True
return False
# Django Middleware
class yandexaccessibilitybotMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
if self.detect_bot(request):
# Handle bot traffic
pass
return self.get_response(request)
// JavaScript/Node.js Detection for YandexAccessibilityBot
const express = require('express');
const app = express();
// Middleware to detect YandexAccessibilityBot
function detect_yandexaccessibilitybot(req, res, next) {
const userAgent = req.headers['user-agent'] || '';
const pattern = /YandexAccessibilityBot/i;
if (pattern.test(userAgent)) {
// Log bot detection
console.log('YandexAccessibilityBot detected from IP:', req.ip);
// Set cache headers
res.set({
'Cache-Control': 'public, max-age=3600',
'X-Robots-Tag': 'noarchive'
});
// Mark request as bot
req.isBot = true;
req.botName = 'YandexAccessibilityBot';
}
next();
}
app.use(detect_yandexaccessibilitybot);
# Apache .htaccess rules for YandexAccessibilityBot
# Block completely
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} YandexAccessibilityBot [NC]
RewriteRule .* - [F,L]
# Or redirect to a static version
RewriteCond %{HTTP_USER_AGENT} YandexAccessibilityBot [NC]
RewriteCond %{REQUEST_URI} !^/static/
RewriteRule ^(.*)$ /static/$1 [L]
# Or set environment variable for PHP
SetEnvIfNoCase User-Agent "YandexAccessibilityBot" is_bot=1
# Add cache headers for this bot
<If "%{HTTP_USER_AGENT} =~ /YandexAccessibilityBot/i">
Header set Cache-Control "public, max-age=3600"
Header set X-Robots-Tag "noarchive"
</If>
# Nginx configuration for YandexAccessibilityBot
# Map user agent to variable
map $http_user_agent $is_yandexaccessibilitybot {
default 0;
~*YandexAccessibilityBot 1;
}
server {
# Block the bot completely
if ($is_yandexaccessibilitybot) {
return 403;
}
# Or serve cached content
location / {
if ($is_yandexaccessibilitybot) {
root /var/www/cached;
try_files $uri $uri.html $uri/index.html @backend;
}
try_files $uri @backend;
}
# Add headers for bot requests
location @backend {
if ($is_yandexaccessibilitybot) {
add_header Cache-Control "public, max-age=3600";
add_header X-Robots-Tag "noarchive";
}
proxy_pass http://backend;
}
}
Should You Block This Bot?
Recommendations based on your website type:
| Site Type | Recommendation | Reasoning |
|---|---|---|
| E-commerce | Optional | Evaluate based on bandwidth usage vs. benefits |
| Blog/News | Allow | Increases content reach and discoverability |
| SaaS Application | Block | No benefit for application interfaces; preserve resources |
| Documentation | Selective | Allow for public docs, block for internal docs |
| Corporate Site | Limit | Allow for public pages, block sensitive areas like intranets |
Advanced robots.txt Configurations
E-commerce Site Configuration
User-agent: YandexAccessibilityBot
Crawl-delay: 5
Disallow: /cart/
Disallow: /checkout/
Disallow: /my-account/
Disallow: /api/
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*&page=
Allow: /products/
Allow: /categories/
Sitemap: https://example.com/sitemap.xml
Publishing/Blog Configuration
User-agent: YandexAccessibilityBot
Crawl-delay: 10
Disallow: /wp-admin/
Disallow: /drafts/
Disallow: /preview/
Disallow: /*?replytocom=
Allow: /
SaaS/Application Configuration
User-agent: YandexAccessibilityBot
Disallow: /app/
Disallow: /api/
Disallow: /dashboard/
Disallow: /settings/
Allow: /
Allow: /pricing/
Allow: /features/
Allow: /docs/
Quick Reference
User Agent Match
YandexAccessibilityBot
Robots.txt Name
YandexAccessibilityBot
Category
other
Respects robots.txt
May not respect
Copied to clipboard!