Я просто использовал Firebase CLI, чтобы запустить статический хостинг-проект. Что именно происходит при включении опции "настроить как одностраничное приложение"? Я ищу описание того, какие файлы были изменены, и какой эффект он оказывает на сервер Firebase.
Firebase CLI: "Настроить как одностраничное приложение (переписать все URL-адреса в /index.html)"
Ответ 1
Эта опция просто устанавливает флаг в файле firebase.json
, чтобы перенаправить все URL-адреса на /index.html
.
"rewrites": [ {
"source": "**",
"destination": "/index.html"
} ]
Дополнительную информацию смотрите в документации хостинга Firebase.
Ответ 2
Полный пример:
{
"hosting": {
"public": ".",
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
}
}
Ответ 3
Официальное объяснение Firebase:
Мы использовали этот вариант в прошлом году (Q1 и Q2), но он, казалось, ничего не делал, но в наши дни, когда мы его применяем, определенно все работает совсем по-другому. Полное официальное объяснение того, что он делает, здесь:
https://firebase.google.com/docs/hosting/url-redirects-rewrites#section-rewrites
Там даже некоторая полезная информация об использовании заголовков в следующем разделе той же страницы.
Ответ 4
Примечание: если вы хотите использовать рендеринг на стороне сервера (SSR), введите Нет и настройте rewrites
следующим образом:
"rewrites": [
{
"function": "angularUniversalFunction",
"source": "**"
}
]
В конце концов, что бы вы ни выбрали, вы всегда можете изменить это в файле firebase.json.