Динамическое включение доменного имени в хостинг Firebase - PullRequest
0 голосов
/ 30 августа 2018

У меня есть файл index.html, который публикуется через хостинг Firebase. Я настроил приложение DEV (бегство) и PROD (uction) в консоли Firebase. И успешно связал мои собственные домены с ним (https://firebase.google.com/docs/hosting/custom-domain)

Эта страница содержит метаданные opengraph и как часть og:url, которая должна указывать либо на mydomain.dev.com (при публикации на DEV), либо на mydomain.prod.com (при публикации на PROD). Я не хочу начинать дублирование файла index.html (code maintentabiliy), так как я могу динамически вставить правильный домен через Firebase Hosting?

<!DOCTYPE html>
<html lang="en">
 <head>    
 <meta charset="utf-8">
 <meta property="og:url" content="mydomain.dev.com or mydomain.prod.com">
 <meta property="og:type" content="website" />  
 <meta property="og:title" content="Some title" />
 <meta property="og:description" content="some description" />      
 <meta property="og:image" content="/assets/img/og.jpg" />
 ...

1 Ответ

0 голосов
/ 02 сентября 2018

Есть два способа справиться с этим.

1) Шаг сборки перед развертыванием

Иметь один файл шаблона index.html, содержащий переменные.

<meta property="og:url" content="{{domain}}">

Затем вы используете инструмент сборки, такой как gulp или webpack , чтобы заменить переменную domain доменом конкретного сайта, который вы развертываете.

2) Функция рендеринга

Это будет аналогичный шаблон index.html, который находится в функции Firebase . Затем вы сопоставляете свой хостинг с функцией, которая по запросу отображает HTML-код с правильным доменом.

...