robots.txt
Добавьте или создайте файл robots.txt, соответствующий стандарту исключения роботов (Robots Exclusion Standard), в корневой директории app, чтобы указать поисковым роботам, какие URL-адреса они могут посещать на вашем сайте.
Статический robots.txt
User-Agent: *
Allow: /
Disallow: /private/
Sitemap: https://acme.com/sitemap.xmlГенерация файла Robots
Добавьте файл robots.js или robots.ts, который возвращает Robots объект.
Полезно знать:
robots.js— это специальный обработчик маршрутов (Route Handlers), который кешируется по умолчанию, если не использует динамический API или динамическую конфигурацию.
import type { MetadataRoute } from 'next'
export default function robots(): MetadataRoute.Robots {
return {
rules: {
userAgent: '*',
allow: '/',
disallow: '/private/',
},
sitemap: 'https://acme.com/sitemap.xml',
}
}export default function robots() {
return {
rules: {
userAgent: '*',
allow: '/',
disallow: '/private/',
},
sitemap: 'https://acme.com/sitemap.xml',
}
}Вывод:
User-Agent: *
Allow: /
Disallow: /private/
Sitemap: https://acme.com/sitemap.xmlНастройка для конкретных пользовательских агентов
Вы можете настроить поведение отдельных поисковых роботов, передав массив пользовательских агентов в свойство rules. Например:
import type { MetadataRoute } from 'next'
export default function robots(): MetadataRoute.Robots {
return {
rules: [
{
userAgent: 'Googlebot',
allow: ['/'],
disallow: '/private/',
},
{
userAgent: ['Applebot', 'Bingbot'],
disallow: ['/'],
},
],
sitemap: 'https://acme.com/sitemap.xml',
}
}export default function robots() {
return {
rules: [
{
userAgent: 'Googlebot',
allow: ['/'],
disallow: ['/private/'],
},
{
userAgent: ['Applebot', 'Bingbot'],
disallow: ['/'],
},
],
sitemap: 'https://acme.com/sitemap.xml',
}
}Вывод:
User-Agent: Googlebot
Allow: /
Disallow: /private/
User-Agent: Applebot
Disallow: /
User-Agent: Bingbot
Disallow: /
Sitemap: https://acme.com/sitemap.xmlОбъект Robots
type Robots = {
rules:
| {
userAgent?: string | string[]
allow?: string | string[]
disallow?: string | string[]
crawlDelay?: number
}
| Array<{
userAgent: string | string[]
allow?: string | string[]
disallow?: string | string[]
crawlDelay?: number
}>
sitemap?: string | string[]
host?: string
}История версий
| Версия | Изменения |
|---|---|
v13.3.0 | Добавлена поддержка robots. |