На этой странице представлены ответы на часто задаваемые вопросы (FAQ) о App Hosting .
Часто задаваемые вопросы App Hosting
Поддерживает ли App Hosting другие фреймворки, помимо Next.js и Angular?
App Hosting предоставляет предварительно настроенную поддержку сборки и развертывания для Next.js и Angular, где мы взяли на себя обязательство понять эти фреймворки и интерпретировать их собственные конфигурации. Для ряда других фреймворков сообщество разработчиков поддерживает адаптеры фреймворка App Hosting . Кроме того, для любого приложения Node.js со скриптом сборки и запуска App Hosting попытается выполнить сборки, но не может надежно гарантировать успех. См. Интеграция фреймворков .
Какие регионы поддерживает Firebase App Hosting ?
Регионы App Hosting вероятно, со временем расширятся. Смотрите App Hosting locations для получения самой актуальной информации.
Могу ли я использовать GitLab или других поставщиков Git, помимо GitHub, для развертываний?
В настоящее время это невозможно, но поддержка других провайдеров входит в долгосрочную дорожную карту App Hosting .
Почему я не могу найти свой репозиторий в пользовательском интерфейсе консоли Firebase?
Если ваш репозиторий не отображается в списке параметров при создании нового бэкенда в консоли Firebase, сначала попробуйте выбрать Обновить список . Если предпочтительный репозиторий по-прежнему недоступен, вам может потребоваться добавить его с помощью параметра Предоставить доступ к новому репозиторию в GitHub .
Кроме того, вы можете управлять репозиториями с помощью приложения Firebase App Hosting GitHub. Для этого перейдите в свой профиль GitHub и выберите Settings , а затем Applications . В строке таблицы для приложения Firebase App Hosting нажмите Configure для управления репозиториями.
Как изменить репозиторий, связанный с моим проектом App Hosting ?
В настоящее время смена репозитория невозможна. Однако вы можете создать новый бэкенд, связанный с предпочтительным репозиторием в том же проекте, или создать новый бэкенд в отдельном проекте.
Заголовки зависят от фреймворка. Делайте то, что вы обычно делаете для своего фреймворка.
Существует ли эмулятор для локальной разработки с App Hosting ?
Да, вы можете выполнить локальные тесты вашего приложения перед развертыванием App Hosting с помощью эмулятора App Hosting , который является частью Firebase Local Emulator Suite. См. раздел Локальное тестирование развертывания вашего приложения .
Почему я вижу ошибки в App Hosting , но не вижу их в Cloud Build?
В таких случаях возможно, что ваша ошибка могла быть вызвана Cloud Run. Проверьте статус развертывания, чтобы убедиться.
Как изменить или удалить связанную учетную запись GitHub?
Чтобы удалить связанную учетную запись GitHub, откройте Developer Connect , убедитесь, что выбран ваш проект, и удалите соединение firebase-app-hosting-github-oath
и соединение, которое начинается с apphosting-github-conn-
. При открытии App Hosting в консоли Firebase теперь вы сможете настроить новое соединение GitHub.
Как установить файлы cookie для моего сайта App Hosting ?
Хотя на момент запуска предварительной версии App Hosting он был недоступен, HTTP-заголовок ответа Set-Cookie
теперь работает так, как и ожидалось.
Общие ограничения App Hosting и устранение неполадок
- Заголовки Cache-Control изменены для ограничения кэшей CDN 60 минутами; это ограничение будет снято вскоре после запуска общедоступного продукта.
- App Hosting CDN может включать только определенный набор заголовков запросов в свои ключи кэша. Этот список включает заголовки NextJS
RSC
, Next-Router-State-Tree
, Next-Router-Prefetch
, Next-Router-Segment-Prefetch
и Next-Url
, а также стандартные Cloud CDN Accept
, Accept-Encoding
, Access-Control-Request-Headers
, Access-Control-Request-Method
, Origin
, Sec-Fetch-Dest
, Sec-Fetch-Mode
, Sec-Fetch-Site
, X-Goog-Allowed-Resources
и X-Origin
. Если ответ содержит заголовок Vary
со значением, не указанным здесь, наш CDN не будет его кэшировать. - Некэшированные статические файлы обслуживаются из Cloud Run ; в более поздней версии они будут храниться и обслуживаться из источника App Hosting для лучшей производительности.
- Консоль Firebase может периодически отображать ошибку «сборка не найдена и является недопустимой» при создании бэкэнда.
- Все бэкенды в одном проекте совместно используют GitHub org/account. Они могут быть подключены к разным репозиториям в рамках этой org/account. Чтобы создать бэкенды, подключенные к разным аккаунтам GitHub, поместите их в отдельные проекты.
Ограничения и устранение неполадок в приложении Angular
Хотя поддержка App Hosting для Angular активно развивается и расширяется, она имеет следующие ограничения:
- I18n : Хотя основные функции I18n работают, прямой переход на страницы SSR может привести к ошибкам.
- Локализация : создание версий для разных локалей не поддерживается.
- Конструкторы : в настоящее время поддерживается только конструктор приложений.
- Окружения и инструменты Monorepo : проекты Angular, имеющие более одной цели приложения, потерпят неудачу. Для более полной поддержки monorepo используйте Nx.
Ограничения Next.js и устранение неполадок
- По умолчанию встроенная оптимизация изображений NextJS отключена на App Hosting, если вы явно не установили
images.unoptimized
на false или не используете пользовательский Image Loader. См. Оптимизация загрузки изображений на Next.js. - URL-пути, содержащие закодированные процентом символы, декодируются Cloud Run . Это может вызвать проблемы с функциями, которые ожидают только закодированные URL-пути, например, параллельная маршрутизация Next.js.
- В настоящее время App Hosting ограничивает кэширование для приложений NextJS с использованием промежуточного ПО . Со временем показатели попадания в кэш должны улучшиться.
- URL-пути, содержащие закодированные процентом символы, декодируются Cloud Run. Это может вызвать проблемы с функциями, которые ожидают только закодированные URL-пути, например, параллельная маршрутизация Next.js