Я пытаюсь сделать свои сборки Next.js переносимыми, что означает, что я запускаю команду сборки один раз, а затем сайт может быть развернут в любой среде, все различия которой контролируются переменными среды.Основной мотивацией для этого является ускорение развертывания при переходе через QA или промежуточные среды к производству.
Я также хочу загрузить все статические файлы (в основном js, изображения и шрифты) в S3.
Я использую next-images и next-fonts, проблема в том, что оба из них, по-видимому, позволяют только кодировать открытый путь этих ресурсов во время сборки.Поэтому, если я хочу включить префикс CDN в путь, я теряю возможность иметь переносимые сборки.
Next.js сам по себе позволяет устанавливать свои собственные assetPrefix
во время выполнения, так что у меня есть работакак и следовало ожидать, ресурсы, управляемые следующими, такие как файлы сценариев.
Я часами пытался связываться с __webpack_public_path__
, чтобы попытаться заставить это работать, но безуспешно.Прямо сейчас, единственный жизнеспособный план, который я имею, состоит в том, чтобы обернуть каждое использование статических ресурсов функцией, которая определяет префикс пути во время выполнения.Это будет огромный объем работы, поэтому я бы предпочел не делать этого, если есть лучший способ.
Кто-нибудь сумел решить эту проблему на уровне конфигурации, а не на уровне кода приложения?уровень