X
פורסם: 2026-02-07 | עודכן: 2026-02-09
התקנת תעודת SSL על Nginx

Tמאמר זה ינחה אתכם בשלבים להתקנת תעודת ה-SSL שלכם על Nginx ולהגדרת הפניה אוטומטית מ-HTTP:// ל-HTTPS://.

1. העלאת התעודות לשרת שבו האתר שלכם מתארח

לאחר שתשלים את יצירת קוד ה-CSR ואת שלבי הפעלת ה-SSL, תקבל קובץ זיפ עם תעודות Sectigo (שהייתה ידועה בעבר כ-Comodo) במייל. בנוסף, ניתן להוריד אותן מלוח הבקרה של חשבון NiceNic שלך.

הערה: אם תבחר בשרת NGINX בעת הפעלת התעודה, תקבל קובץ זיפ המכיל קובץ תעודה עם סיומת '.crt' וקובץ חבילת רשות תעודה (CA bundle) עם סיומת '.ca-bundle'.

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

ניתן גם להוריד את קובץ ה-Bundle לכל תעודה על פי ההוראות כאן.

2. שילוב כל התעודות לקובץ יחיד

יש לוודא שכל התעודות (שלך_דומיין.crt ו-שלך_דומיין.ca-bundle) משולבות בקובץ '.crt' יחיד.

תעודת הדומיין שלך צריכה להיות הראשונה בקובץ, ואחריה שרשרת התעודות (CA Bundle).

גש לתיקייה שבה העלית את קבצי התעודה. הפעל את הפקודה הבאה לשילוב הקבצים:

$ cat שלך_דומיין.crt שלך_דומיין.ca-bundle >> שלך_דומיין_chain.crt

שימו לב שאם קובצי התעודה הוצאו מחשבון NiceNic שלך, הפקודה המתאימה ביותר היא:

$ cat שלך_דומיין.crt > שלך_דומיין_chain.crt ; echo >> שלך_דומיין_chain.crt ; cat שלך_דומיין.ca-bundle >> שלך_דומיין_chain.crt

3. יצירת בלוק שרת Nginx נפרד או שינוי קובץ התצורה הקיים

להתקנת תעודת ה-SSL על Nginx, יש להראות לשרת אילו קבצים להשתמש, על ידי א) יצירת קובץ תצורה חדש, או ב) עריכת הקובץ הקיים.

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

אנו ממליצים ליצור קובץ תצורה חדש בתיקייה זו:

/etc/nginx/conf.d

ניתן לעשות זאת בעזרת הפקודה:

sudo nano /etc/nginx/conf.d/Your_דומיין*-ssl.conf

כאשר Your_דומיין*-ssl.conf הוא שם הקובץ שנוצר.

העתק והדבק אחד מבלוקי השרת למספר 443 שנמצאים מטה וערוך את הנתיבים. וודא ששם השרת והנתיב ל-webroot תואמים בין בלוק השרת לנמל 80 ובין זה של נמל 443. אם יש לך ערכים חשובים אחרים שצריך לשמור, העבר אותם גם לבלוק השרת החדש.
    ב) עריכת קובץ התצורה הדיפולטי של שרת האינטרנט, שנקרא nginx.conf. הוא אמור להימצא באחת מהתיקיות הבאות:

/usr/local/nginx/conf

/etc/nginx

/usr/local/etc/nginx

ניתן גם להשתמש בפקודה זו כדי למצוא אותו:

sudo find / -type f -iname "nginx.conf"

לאחר שמצאת אותו, פתח את הקובץ עם:

sudo nano nginx.conf

העתק והדבק אחד מבלוקי השרת עבור פורט 443 שנמצאים מטה, וערוך את הנתיבים לפי בלוק השרת שלך עבור פורט 80 (עם שם שרת תואם, נתיב ל-webroot וכל ערכים חשובים אחרים). לחלופין, ניתן להעתיק את בלוק השרת של פורט 80, להדביק אותו מתחתיו, לעדכן את הפורט ולהוסיף את ההנחיות הדרושות הקשורות ל-SSL.

בחר את בלוק השרת:

מטה ניתן למצוא בלוק שרת עבור גרסת Nginx שלך.

הערה: להריץ את הפקודה הבאה לצפייה בגרסת Nginx שלך:

sudo nginx -v



הערה: החלף את ערכי שמות הקבצים, כמו שלך_דומיין_chain.crt, בבלוק השרת עם הפרטים שלך, וערוך את הנתיבים אליהם באמצעות /path/to/.


בלוק שרת לגרסת Nginx 1.14 ומטה:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/שלך_דומיין_chain.crt;

ssl_certificate_key /path/to/שלך_private.key;

root /path/to/webroot;

server_name שלך_דומיין.com;

}

הערה: ניתן לציין כמה שמות מארחים בתצורה כזו, במידת הצורך, למשל:

server {

listen 443;

ssl on;

ssl_certificate /path/to/certificate/שלך_דומיין_chain.crt;

ssl_certificate_key /path/to/שלך_private.key;

root /path/to/webroot;

server_name שלך_דומיין.com www.שלך_דומיין.your;

}

בלוק שרת לגרסת Nginx 1.15 ומעלה:

server {

listen 443 ssl;

ssl_certificate /path/to/certificate/שלך_דומיין_chain.crt;

ssl_certificate_key /path/to/שלך_private.key;

root /path/to/webroot;

server_name שלך_דומיין.com;

}

ssl_certificate צריך להיות מיועד לקובץ התעודות המשולב שיצרת קודם.
ssl_certificate_key צריך להיות מיועד למפתח הפרטי שנוצר עם קוד ה-CSR.
הנה כמה טיפים כיצד למצוא את המפתח הפרטי ב-Nginx.

חשוב: עבור תעודת Multi-דומיין או Wildcard, יש להוסיף בלוק שרת נפרד עבור כל דומיין/תת-דומיין הכלול בתעודה. וודא לציין את הדומיין/תת-דומיין הרלוונטי יחד עם הנתיבים לאותם קבצי תעודה בבלוק השרת, כמתואר לעיל.

לאחר שהבלוק המתאים נוסף לקובץ, וודא לשמור את העריכות. אז ניתן לבדוק את השינויים שהוכנסו ע"י השלבים הבאים.

הרץ את הפקודה הזו כדי לוודא שסינטקס קובץ התצורה תקין:

sudo nginx -t



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


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

sudo nginx -T | grep 'errאו_log'

אם אף אחד מהקבצים שהוזכרו אינו קיים, הקבצים מקומנטים או אם לא צוין קובץ יומן שגיאות, יש לבדוק את יומן המערכת ברירת מחדל:

tail /var/log/nginx/errאו.log -n 20

אם השרת מציג שההבדיקה הצליחה, הפעל מחדש את Nginx עם הפקודה הזו ליישום השינויים:

sudo nginx -s reload

עכשיו תעודת ה-SSL מותקנת. אתה יכול לבדוק את ההתקנה כאן.

הערות חשובות:

לפעמים, לאחר התקנת קובץ ה-SSL ששולב באמצעות שורת הפקודה, תקבל הודעת שגיאה 'Nginx/Apache errאו: 0906D066:PEM routines:PEM_read_bio:bad end line', במקרה כזה, הפתרון נמצא במדריך ההתייחסות.

בעיה נפוצה נוספת בשלב זה היא הודעת שגיאה 'Nginx SSL: errאו:0B080074:x509 certificate routines: X509_check_private_key:key values mismatch', ניתן למצוא עליה פרטים נוספים ודרכי פתרון במאמר זה.

4. הגדרת הפניית HTTPS

אנו ממליצים להתקין הפניה מ-HTTP ל-HTTPS. כך, מבקרי האתר שלך יוכלו לגשת רק לגרסה המאובטחת של האתר.

כדי לעשות זאת, יש להוסיף שורה אחת לקובץ התצורה של בלוק השרת עבור פורט 80.

טיפים:

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

sudo nginx -T | grep -iw "configuration file"

sudo nginx -T | grep -iw "include"

הנתיבים הדיפולטיים לקובץ conf הם:

בלינוקס מבוסס RHEL: /etc/nginx/conf.d/default.conf

בלינוקס מבוסס Debian: /etc/nginx/sites-enabled/default

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

sudo nano name_of_the_file

כאשר תמצא את הקובץ המכיל את בלוק השרת עבור פורט 80 (פורט HTTP דיפולטי), הוסף את השורה הבאה:

return 301 https://$server_name$request_uri;

הערה: את חוק ההפניה למעלה יש להכניס כשורה האחרונה בבלוק השרת.

  • return היא ההוראה הראשית לשימוש.
  • 301 היא הפניה קבועה (302 היא זמנית).
  • https הוא סוג סכימה מפורש (במקום שימוש במשתנה $scheme).
  • $server_name המשתנה ישתמש בדומיין שצויין בהוראת server_name.
  • $request_uri המשתנה משמש להתאמת הנתיבים לדפים/חלקים המבוקשים באתר (כל מה שאחרי שם הדומיין).
הנה דוגמאות לבלוקי שרת עם הפניית HTTPS:

הפניה קבועה ל-HTTPS

server {

listen 80;

server_name שלך_דומיין.com www.שלך_דומיין.your;

return 301 https://$server_name$request_uri;

}

הפניה קבועה ל-HTTPS ללא www

server {

listen 80;

server_name שלך_דומיין.com www.שלך_דומיין.your;

return 301 https://שלך_דומיין.com$request_uri;

}

הפניה קבועה ל-HTTPS עם www

server {

listen 80;

server_name שלך_דומיין.com www.שלך_דומיין.your;

return 301 https://www.שלך_דומיין.your$request_uri;

}

הפניה זמנית ל-HTTPS ללא www

server {

listen 80;

server_name שלך_דומיין.com www.שלך_דומיין.your;

return 302 https://שלך_דומיין.com$request_uri;

}

ניתן למצוא פרטים נוספים על אפשרויות ההפניה ב-Nginx כאן.
צריך עזרה? אנחנו תמיד כאן בשבילך. שלח פניה
זכויות יוצרים © 2006-2026 חברת NICENIC INTERNATIONAL GROUP CO., LIMITED כל הזכויות שמורות