Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
32 lines
1008 B
TypeScript
32 lines
1008 B
TypeScript
import type { MetadataRoute } from 'next';
|
|
import { SITE } from '../lib/seo';
|
|
|
|
/**
|
|
* Всем поисковикам и ботам ИИ (ChatGPT, Perplexity, Claude, Gemini) — можно всё, кроме служебных адресов.
|
|
* Боты ИИ перечислены явно: так видно, что доступ им открыт намеренно.
|
|
*/
|
|
const AI_BOTS = [
|
|
'OAI-SearchBot',
|
|
'ChatGPT-User',
|
|
'GPTBot',
|
|
'PerplexityBot',
|
|
'Perplexity-User',
|
|
'Claude-SearchBot',
|
|
'Claude-User',
|
|
'ClaudeBot',
|
|
'Google-Extended',
|
|
'Applebot-Extended',
|
|
];
|
|
|
|
export default function robots(): MetadataRoute.Robots {
|
|
// API и файлы на том же домене (nginx проксирует их в barev-app) — в поиске не нужны
|
|
const disallow = ['/trpc/', '/files/', '/client-log'];
|
|
return {
|
|
rules: [
|
|
{ userAgent: '*', allow: '/', disallow },
|
|
{ userAgent: AI_BOTS, allow: '/', disallow },
|
|
],
|
|
sitemap: `${SITE}/sitemap.xml`,
|
|
};
|
|
}
|