assetPrefix
Внимание: Развертывание на Vercel автоматически настраивает глобальный CDN для вашего проекта Next.js. Вам не нужно вручную настраивать Asset Prefix.
Полезно знать: В Next.js 9.5+ была добавлена поддержка настраиваемого Base Path, который лучше подходит для размещения вашего приложения в подкаталоге, например
/docs
. Мы не рекомендуем использовать пользовательский Asset Prefix для этого сценария.
Для настройки CDN вы можете установить префикс ресурсов (asset prefix) и настроить источник CDN для разрешения на домен, где размещён Next.js.
Откройте next.config.js
и добавьте конфигурацию assetPrefix
:
const isProd = process.env.NODE_ENV === 'production'
module.exports = {
// Используйте CDN в production и localhost для разработки.
assetPrefix: isProd ? 'https://cdn.mydomain.com' : undefined,
}
Next.js будет автоматически использовать ваш префикс ресурсов для файлов JavaScript и CSS, которые он загружает из пути /_next/
(папка .next/static/
). Например, с приведённой выше конфигурацией запрос к JS-чанку:
/_next/static/chunks/4b9b41aaa062cbbfeff4add70f256968c51ece5d.4d708494b3aed70c04f0.js
Будет преобразован в:
https://cdn.mydomain.com/_next/static/chunks/4b9b41aaa062cbbfeff4add70f256968c51ece5d.4d708494b3aed70c04f0.js
Точная конфигурация загрузки файлов на ваш CDN будет зависеть от выбранного CDN. Единственная папка, которую нужно разместить на CDN — это содержимое .next/static/
, которое должно быть загружено как _next/static/
, как указано в URL выше. Не загружайте остальную часть папки .next/
, так как вы не должны раскрывать серверный код и другую конфигурацию публично.
Хотя assetPrefix
охватывает запросы к _next/static
, он не влияет на следующие пути:
- Файлы в папке public; если вы хотите обслуживать эти ресурсы через CDN, вам нужно самостоятельно добавить префикс