דוגמאות וטיפים לאתר סטטי

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

דפים מיוחדים

דפי אינדקס

דף אינדקס (שנקרא גם אינדקס של ספריות שרת אינטרנט) הוא קובץ המוצג למבקרים כשהם מבקשים כתובת URL שלא משויך אליה קובץ. כשמקצים מאפיין של MainPageSuffix, Cloud Storage מחפש קובץ עם השם הזה שהקידומת שלו תואמת לכתובת ה-URL שהמבקרים ביקשו.

לדוגמה, נניח שמגדירים את MainPageSuffix של האתר הסטטי ל-index.html. בנוסף, נניח שאין קובץ בשם directory ב-www.example.com של הקטגוריה. במצב כזה, אם משתמשים מבקשים את כתובת ה-URL http://www.example.com/directory,‏ Cloud Storage ינסה לספק את הקובץ www.example.com/directory/index.html. אם גם הקובץ הזה לא קיים, Cloud Storage יחזיר דף שגיאה.

MainPageSuffix גם שולט בקובץ שמסופק כשמשתמשים מבקשים את האתר ברמה העליונה. בהמשך לדוגמה שלמעלה, אם משתמשים מבקשים את http://www.example.com,Cloud Storage ינסה לספק את הקובץ www.example.com/index.html.

כשמנסים לגשת לכתובת URL עם קו נטוי בסוף, כמו http://www.example.com/dir/, ראו פתרון בעיות.

דף שגיאה

דף שגיאה הוא הקובץ שמוחזר למבקרים באתר הסטטי, כשמבקשים כתובת URL שלא תואמת לקובץ קיים. אם מקצים MainPageSuffix, Cloud Storage יחזיר דף שגיאה רק אם אין קובץ עם השם המבוקש או דף אינדקס רלוונטי.

בעת החזרת דף שגיאה, קוד התגובה של http הוא 404. התכונה שקובעת איזה קובץ ישמש כדף שגיאה היא NotFoundPage. אם לא מגדירים את NotFoundPage, המשתמשים יקבלו דף שגיאה גנרי.

דוגמאות להגדרות של אתר

קטגוריה עם שלושה אובייקטים

נניח שקטגוריה בשם www.example.com הוגדרה כאתר עם ההגדרות והקבצים הבאים:

  • ‫‪MainPageSuffix = "index.html"
  • ‫‪NotFoundPage = "404.html"
  • הקטגוריה מכילה שלושה אובייקטים המשותפים באופן ציבורי: "index.html",‏ "404.html" ו-"dir/index.html".

הטבלה הבאה מציגה את התוכן המוצג בשביל כתובות ה-URL שנבחרו:

כתובת ה-URL המבוקשת התוכן המוצג קוד תגובת HTTP
‫http://www.example.com
http://www.example.com/‎
http://www.example.com/index.html
האובייקט "index.html". 200
‫http://www.example.com/hello האובייקט "404.html". 404
‫http://www.example.com/dir/index.html האובייקט "dir/index.html". 200
‏http://www.example.com/dir האובייקט "dir/index.html". 301
http://www.example.com/dir/‎‏ האובייקט "dir/index.html", בהנחה שלא קיים אובייקט עם אפס בייטים בשביל /dir/ 200
אובייקט ריק של אפס בייטים, אם קיים בשביל /dir/. כדי להסיר אובייקט זה מסוג אפס בייטים, ראו פתרון בעיות. 301

קטגוריה עם שני אובייקטים

נניח שקטגוריה בשם www.example.com הוגדרה כאתר עם ההגדרות והקבצים הבאים:

  • MainPageSuffix = "main.html"
  • ‫‪NotFoundPage = "404.html"
  • הקטגוריה מכילה שני אובייקטים המשותפים באופן ציבורי: "main.html" ו-"404.html".

הטבלה הבאה מציגה את התוכן המוצג בשביל כתובות ה-URL שנבחרו:

כתובת ה-URL המבוקשת התוכן המוצג קוד תגובת HTTP
‏http://www.example.com
http://www.example.com/‎
האובייקט "main.html". 200
‏http://www.example.com/index.html האובייקט "404.html". 404

אם אובייקט משותף באופן ציבורי, אפשר להציג אותו גם עם כתובת ה-URL:

http://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME

לדוגמה, כתובת ה-URL של אובייקט index.html תהיה:

http://storage.googleapis.com/www.example.com/index.html

למידע נוסף על עבודה עם נתונים הנגישים לציבור, ראו גישה לנתונים ציבוריים.

טיפים לעבודה עם קטגוריה שהוגדרה כאתר

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

הוספת תתי-דומיינים

נניח שרוצים גם להציג תוכן ב-test.example.com, מקטגוריה אחרת מזו המציגה תוכן ב-www.example.com. עושים זאת כך:

  1. יוצרים קטגוריה חדשה כדי להציג את התוכן הנוסף.

  2. אם פועלים לפי המדריך בנושא אירוח אתר סטטי להצגת התוכן באמצעות HTTPS, אפשר לערוך את מאזן העומסים במסוף Google Cloud באופן הבא:

    1. בשביל Backend configuration, יוצרים קטגוריית קצה עורפי חדשה test-bucket, על-ידי בחירת הקטגוריה החדשה שנוצרה.
    2. בשביל Host and path rules, מוסיפים כלל חדש באופן הבא:
      Hosts                  Paths     Backends
      test.example.com       /*        test-bucket
      
    3. בשביל Frontend configuration, מוסיפים כתובת IP ויציאת קצה קדמי חדשות, עם אותם ערכים כמו בהגדרה הראשונה, למעט במקרים הבאים:

      • בשביל IP address, יוצרים כתובת IP חדשה ושומרים אותה.
      • בשביל Certificate, יוצרים אישור SSL חדש בשביל test.example.com.
  3. אחרי שמעדכנים את מאזן העומסים, מוסיפים רשומת A חדשה לשירות הרישום של הדומיין, באמצעות כתובת ה-IP של ההגדרה החדשה של הקצה הקדמי:

    NAME                  TYPE     DATA
    test                  A        IP_ADDRESS
    

התנהגות API

הגדרות האתר MainPageSuffix ו-NotFoundPage משמשות רק לבקשות שמגיעות ל-Cloud Storage דרך הפניה אוטומטית של CNAME או של A. לדוגמה, בקשה ל-www.example.com מציגה את דף האינדקס, אבל בקשה מקבילה ל-storage.googleapis.com/www.example.com לא מציגה אותו.

כך, ההתנהגות של ה-API לגבי בקשות לדומיינים של Cloud Storage, כמו storage.googleapis.com/www.example.com, נשמרת. לדוגמה, אפשר להמשיך להציג אובייקטים מהקטגוריה www.example.com כמו מכל קטגוריה אחרת. במקרה של הקטגוריה www.example.com, רשימת האובייקטים שמתקבלת כוללת את 404.html ואת index.html.

אירוח נכסים סטטיים לאתר דינמי

אפשר להשתמש ב-Cloud Storage כדי לארח נכסים סטטיים בשביל אתר דינמי המתארח, לדוגמה ב-Google App Engine או ב-Google Compute Engine. חלק מהיתרונות של אירוח נכסים סטטיים בקטגוריה, כמו תמונות או קובצי JavaScript, כוללים:

  • Cloud Storage מתנהג כמו רשת להעברת תוכן (CDN) כי אובייקטים הניתנים לקריאה באופן ציבורי נשמרים במטמון ברשת Cloud Storage כברירת מחדל.

  • חיובי רוחב פס בשביל גישה לתוכן בדרך כלל זולים יותר ב-Cloud Storage.

  • כשממלאים בקשה לתוכן סטטי מ-Cloud Storage, העומס על שרתי האינטרנט מופחת.

כשמארחים נכסים סטטיים בשביל אתר דינמי, לא צריך ליצור רשומות DNS ולהפנות לקטגוריה או למאזן עומסים כמו שעושים באתר סטטי. לדוגמה, אפשר ליצור קטגוריה בשם www_example_com_assets עם הנכסים המתאימים שהוגדרו לשיתוף באופן ציבורי, ואז לגשת לנכסים האלו באמצעות הדומיין של Cloud Storage. לדוגמה, נניח שקובץ ה-JavaScript library.js נמצא בקטגוריה www_example_com_assets המשותפת באופן ציבורי, ויש לכם גישה אליו בתור http://storage.googleapis.com/www_example_com_assets/library.js.

הגדרת פרמטרים של מטמון

אפשר לקבוע איך נכסי האתר יישמרו במטמון על ידי הגדרת המטא-נתונים של Cache-Control. באופן כללי, מגדירים מטא-נתונים של בקרה על המטמון רק בשביל אובייקטים הנגישים לכל המשתמשים האנונימיים. הדרישה הזו תקפה לכל אובייקט המוצג מקטגוריה של Cloud Storage כחלק מאתר סטטי.

‏Cloud Storage מחיל הגדרת בקרה על המטמון של 3,600 שניות על אובייקטים הנגישים לכל המשתמשים האנונימיים, אלא אם מציינים הגדרות מפורשות לבקרה על המטמון. ראו הצגה ועריכה של מטא-נתונים להוראות בנושא הגדרת מטא-נתונים של אובייקט, כמו Cache-Control.

אפשר גם להשתמש ב-Cloud CDN כדי לשמור במטמון תוכן HTTP(S) חיצוני עם איזון עומסים בקרבת המשתמשים, וכך בדרך כלל להפחית את העלויות של מילוי בקשות. למידע נוסף, ראו שמירה במטמון.

מעקב אחרי החיובים

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

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

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

משתמשים חדשים ב-Google Cloud עשויים להיות זכאים לתקופת ניסיון בחינם.

אם אתם כבר משתמשים ב-Google Cloud, תוכלו לקבל פירוט של עלויות הפרויקט בדף החיוב.

פתרון בעיות

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

המאמרים הבאים

נסו בעצמכם

אנחנו ממליצים למשתמשים חדשים ב-Google Cloud ליצור חשבון כדי להעריך את הביצועים של מוצרי Cloud Storage בתרחישים מהעולם האמיתי. לקוחות חדשים גם מקבלים בחינם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.

נסו את Cloud Storage בחינם