לבדוק מקומית, לשתף שינויים ואז לפרוס בשידור חי

לפני הפריסה לאתר החי שלך, תרצה להציג ולבדוק את השינויים שלך. Firebase Hosting מאפשר לך לצפות ולבדוק שינויים מקומיים ולתקשר עם משאבי פרוייקט backend חיקוי. אם אתה צריך שחברי הצוות שלך יראו ויבדקו את השינויים שלך, אירוח יכול ליצור כתובות URL של תצוגה מקדימה זמנית לאתר שלך. אנחנו אפילו תומכים אינטגרציה GitHub לפרוס מבקשה משיכה.

לפני שאתה מתחיל

השלם את הפעולות מפורטות בדף הצעדים ראשון האירוח , במיוחד את המשימות הבאות:

  1. התקן או עדכן את Firebase CLI לגרסתו האחרונה.
  2. חבר את ספריית הפרויקטים המקומית (המכילה את תוכן האפליקציה שלך) לפרויקט Firebase שלך.

אתה יכול לפרוס אופציונלי את תוכן האחסון והתצורה של האפליקציה שלך, אך זה אינו תנאי מוקדם לשלבים בדף זה.

שלב 1: מבחן מקומי

אם אתה מבצע חזרות מהירות או שאתה רוצה שהאפליקציה שלך תקיים אינטראקציה עם משאבי פרויקט backend חיקוי, תוכל לבדוק את תוכן האירוח שלך ולהגדיר אותו באופן מקומי. בעת בדיקה מקומית, Firebase משרת את אפליקציית האינטרנט שלך בכתובת אתר המתארחת באופן מקומי.

אירוח הוא חלק Suite Emulator המקומי Firebase , המאפשר האפליקציה כדי אינטראקציה עם תוכן config האירוח לחיקוי שלך, כמו גם אופציונאלי משאבי הפרויקט לחיקוי שלך (פונקציות, מסדי נתונים, ותקנון).

  1. (אופציונאלי) כברירת מחדל, היישום מקומי ארח שלך יהיה אינטראקציה עם אמיתי, לא מדומה, משאבי פרויקט (פונקציות, מסד נתונים, כללים, וכו '). אתה יכול במקום אופציונלי קישור האפליקציה שלך כדי להשתמש בכול משאבים בפרויקט נקטו בגישה דומה לזו שאתה הגדרת. למידע נוסף: Database זמן אמת | ענן Firestore | פונקציות ענן

  2. מהשורש של ספריית הפרויקטים המקומיים שלך, הפעל את הפקודה הבאה:

    firebase emulators:start
  3. פתח יישום האינטרנט שלך בכתובת המקומית חזרה ידי CLI (בדרך כלל http://localhost:5000 ).

  4. כדי לעדכן את כתובת האתר המקומית עם שינויים, רענן את הדפדפן שלך.

בדוק ממכשירים מקומיים אחרים

כברירת מחדל, אמולטורים רק להגיב לבקשות מה- localhost . המשמעות היא שתוכל לגשת לתוכן המתארח שלך מדפדפן האינטרנט של המחשב שלך אך לא ממכשירים אחרים ברשת שלך. אם תרצה מבחן מהתקנים מקומיים אחרים, להגדיר שלך firebase.json כך:

"emulators": {
    // ...

    "hosting": {
      "port": 5000
      "host": "0.0.0.0"
    }
  }

שלב 2: תצוגה מקדימה ולשתף

אם אתה רוצה שאחרים יראו שינויים באפליקציית האינטרנט שלך לפני שיצאו לחיות, תוכל להשתמש בערוצי תצוגה מקדימה.

לאחר הפריסה לערוץ תצוגה מקדימה, Firebase משרת את אפליקציית האינטרנט שלך ב"אתר תצוגה מקדימה ", שהיא כתובת אתר זמנית הניתנת לשיתוף. בעת שימוש URL מקדים, אינטראקצית יישום האינטרנט שלך עם backend האמיתי שלך עבור כול משאבים בפרויקט.

שים לב שלמרות שקשה לנחש את כתובות האתרים המקדימות (מכיוון שהן מכילות חשיפה אקראית), הן ציבוריות. אז כל מי שמכיר את כתובת האתר יכול לגשת אליה.

  1. מהשורש של ספריית הפרויקטים המקומיים שלך, הפעל את הפקודה הבאה:

    firebase hosting:channel:deploy CHANNEL_ID

    החלף CHANNEL_ID עם מחרוזת ללא רווחים (למשל, feature_mission-2-mars ). מזהה זה ישמש לבניית כתובת האתר לתצוגה מקדימה המשויכת לערוץ התצוגה המקדימה.

  2. פתח את אפליקציית האינטרנט שלך בכתובת האתר המקדימה שהוחזרה על ידי CLI. זה ייראה בערך ככה: PROJECT_ID -- CHANNEL_ID - RANDOM_HASH .web.app

  3. כדי לעדכן את כתובת האתר המקדימה שלך עם שינויים, הפעל שוב את אותה פקודה. הקפד לציין את אותה CHANNEL_ID בפקודה.

למד על ניהול ערוצי תצוגה מקדימה , כולל כיצד להגדיר תפוגה של הערוץ.

Firebase Hosting תומך בפעולת GitHub היוצרת ומעדכנת אוטומטית כתובת URL בתצוגה מקדימה בעת ביצוע שינויים לבקשת משיכה. למד כיצד להגדיר ולהשתמש פעולת GitHub זה .

שלב 3: לפרוס חי

כשתהיה מוכן לשתף את השינויים שלך עם העולם, פרוס את תוכן האירוח שלך ואת התצורה לערוץ החי שלך. Firebase מציע כמה אפשרויות שונות לשלב זה בהתאם למקרה השימוש שלך (ראה אפשרויות להלן).

אפשרות 1: שיבוט מערוץ תצוגה מקדימה לערוץ החי שלך

אפשרות זו מספקת ביטחון כי אתה פריסה לערוץ שלך לחיות את התוכן המדויק config שבדקת בערוץ מקדים. למידע נוסף על שיבוט גרסאות .

  1. מכל ספרייה, הפעל את הפקודה הבאה:

    firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live

    החלף כל מציין מיקום כדלקמן:

    • SOURCE_SITE_ID ו TARGET_SITE_ID : אלו הם מזהים של אתרי אירוח המכילים הערוצים.

      • עבור אתר ברירת המחדל שלך לאירוח, השתמש במזהה הפרויקט שלך ב- Firebase.
      • תוכל לציין אתרים הנמצאים באותו פרויקט Firebase או אפילו בפרויקטים שונים של Firebase.
    • SOURCE_CHANNEL_ID : זהו identifer עבור הערוץ וכיום הוא משרת את הגרסה שאתה רוצה לפרוס לערוץ החי שלך.

      • עבור ערוץ חי, להשתמש live לערוץ מזהה.
  2. להציג את השינויים (השלב הבא).

אפשרות 2: פריסה מספריית הפרויקטים המקומית שלך לערוץ החי שלך

אפשרות זו מספקת לך גמישות להתאים תצורות ספציפיות לערוץ החי או לפריסה גם אם לא השתמשת בערוץ תצוגה מקדימה.

  1. מהשורש של ספריית הפרויקטים המקומיים שלך, הפעל את הפקודה הבאה:

    firebase deploy --only hosting
  2. להציג את השינויים (השלב הבא).

שלב 4: צג השינויים באתר הפעיל שלך

שתי האפשרויות לעיל פורסות את תוכן האירוח וההגדרות שלך לאתרים הבאים:

  • תת-הדומיינים המסופקים ב- Firebase לאתר ברירת המחדל שלך לאירוח ולכל אתרי אירוח נוספים:
    SITE_ID .web.app (כמו PROJECT_ID .web.app )
    SITE_ID .firebaseapp.com (כמו PROJECT_ID .firebaseapp.com )

  • כל התחומים מנהג שחיברת לאתר אירוח שלך (ים)

כדי להגביל את לפרוס אתר אירוח ספציפי, לציין מטרה לפרוס ב פקוד CLI שלך.

פעילויות ומידע אחרים לפריסה

הוסף הערה לפריסה

באפשרותך להוסיף הערה לפריסה. תגובה זו תציג את המידע פריסה אחרים על לוח המחוונים אירוח במסוף Firebase. לדוגמה:

firebase deploy --only hosting -m "Deploying the best new feature ever."

הוסף משימות סקריפט של פריסה מוקדמת ולאחר מכן

אתה יכול סקריפטים פגז Connect אופציונלי אל firebase deploy הפקודה לבצע משימות predeploy או postdeploy. לדוגמה, וו לאחר העבודה יכול להודיע ​​למנהלי מערכת על פריסת תוכן חדש באתר. עיין בתיעוד CLI Firebase לפרטים נוספים.

מטמון תוכן שנפרס

כאשר בקשה מוגשת עבור תוכן סטטי, Firebase אירוח אוטומטי למטמון את התוכן על CDN. אם אתה מתפרס תוכן של האתר שלך, Firebase אוטומטי מנקה את כול תוכן סטטי שמור ברחבי CDN כך בקשות חדשות לקבלת התוכן החדש שלך.

שים לב, אתה יכול להגדיר את במטמון של תוכן דינמי .

הגשה באמצעות HTTPS

ודא שכל המשאבים החיצוניים שאינם מתארחים ב- Firebase Hosting טעונים באמצעות SSL (HTTPS), כולל סקריפטים חיצוניים כלשהם. רוב הדפדפנים אינם מאפשרים למשתמשים לטעון "תוכן מעורב" (תעבורה SSL ותעבורה שאינה SSL).

הצעדים הבאים