הפעלת שרת אינטרנט בסיסי של IIS

אתם יכולים לשלוט במכונה וירטואלית (VM) ב-Compute Engine כמו בכל שרת Windows רגיל. במדריך הזה נסביר איך לפרוס שרת אינטרנט פשוט של IIS כדי ללמוד את היסודות של הפעלת שרת אינטרנט במכונת VM.

לפני שמתחילים

תצטרכו ליצור מופע חדש של Windows שמאפשר תנועת HTTP.

  • פועלים לפי ההוראות שבמדריך למתחילים כדי ליצור מכונת Windows חדשה ולהתחבר אליה באמצעות RDP.

התקנה של IIS

  1. בשורת המשימות של Windows, בשדה החיפוש, מקלידים PowerShell ואז מקישים על Enter. אם אין שדה חיפוש בסרגל המשימות, לוחצים על סמל החיפוש, מקלידים PowerShell ואז לוחצים על Enter. אם לא שדה החיפוש ולא סמל החיפוש מופיעים בשורת המשימות, אפשר לעיין במאמר הסתרה וביטול הסתרה של תיבת החיפוש ב-Windows.

  2. בתוצאות החיפוש, בקטע אפליקציות, לוחצים לחיצה ימנית על Windows PowerShell ובוחרים באפשרות הפעלה כמנהל מערכת.

  3. מריצים את הפקודות הבאות כדי להתקין את שירותי IIS:

    import-module servermanager
    
    add-windowsfeature web-server -includeallsubfeature
    
  4. מחליפים את דף האינטרנט שמוגדר כברירת מחדל בשרת האינטרנט IIS באמצעות הפקודה הבאה:

    echo '<!doctype html><html><body><h1>Hello World!</h1></body></html>' > C:\inetpub\wwwroot\index.html
    

בדיקת השרת

בודקים שהמופע משרת תנועה בכתובת ה-IP החיצונית שלו:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. כדי לראות את הדף Hello World!, מעתיקים את כתובת ה-IP מהעמודה External IP ומדביקים אותה בכרטיסייה חדשה בדפדפן. אם הדף Hello World! לא מופיע, צריך לפעול לפי השלבים לפתרון בעיות.

הסרת המשאבים

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

פתרון בעיות

מקבלים שגיאה Connection Refused

אם מופיעה שגיאה Connection Refused, יכול להיות ש:

  • למכונה הווירטואלית שלכם אין גישה ציבורית כי כללי חומת האש או התגים שלכם לא מוגדרים בצורה נכונה באחת מהדרכים הבאות:

    • למכונה הווירטואלית אין את התג המתאים שמאפשר ל-Compute Engine להחיל את כללי חומת האש המתאימים על המכונה.
    • בפרויקט אין כלל חומת אש שמאפשר תעבורת נתונים לכתובת ה-IP החיצונית של המכונה.
  • אתם מנסים לגשת למכונה הווירטואלית באמצעות כתובת https. בודקים שהכתובת שלכם היא http://[EXTERNAL_IP] ולא https://[EXTERNAL_IP].

כדי לוודא שלמופע של מכונת ה-VM יש את התגים הנכונים:

  1. נכנסים לדף VM instances במסוף Google Cloud .

    כניסה לדף VM instances

  2. לוחצים על שם המכונה שאליה מנסים להתחבר.
  3. לוחצים על עריכה בחלק העליון של הדף.
  4. גוללים למטה אל Firewalls (חומות אש) ומוודאים שהתיבה Allow HTTP traffic (התרת תעבורת HTTP) מסומנת. אם היא לא מסומנת, מסמנים אותה.
  5. שומרים את השינויים. כך מוודאים שהתגים הנכונים נוספים למופע של מכונה וירטואלית.

כדי לוודא שקיים כלל חומת האש הנכון:

  1. נכנסים לדף Firewall rules במסוף Google Cloud .

    נכנסים אל Firewall rules

  2. חפשו כלל חומת אש שמאפשר את כל טווחי כתובות ה-IP דרך tcp:80. בדרך כלל, הכלל הזה נקרא כלל default-allow-http.
  3. אם הכלל לא קיים, צריך ליצור אותו.
    1. לוחצים על יצירת כלל לחומת האש.
    2. מזינים שם לכלל, למשל default-allow-http.
    3. בקטע טווחים של כתובות IP של מקורות, מזינים 0.0.0.0/0 כדי לאפשר תנועה מכל המקורות.
    4. בקטע Protocols and ports (פרוטוקולים ויציאות), מסמנים את האפשרות Specified protocols and ports (פרוטוקולים ויציאות שצוינו) ומזינים tcp:80.
    5. יוצרים את הכלל לחומת האש.

כדי לבדוק את השרת שוב, עוברים לכתובת ה-IP החיצונית של המכונה:

http://[EXTERNAL_IP]