הקדמה
על שרת Ubuntu, שרת האינטרנט Nginx מאחסן את מסמכיו ב־/var/www/html, שבדרך כלל ממוקם במערכת הקור של המערכת הפועלת. לעיתים נראות, זה עשוי להיות מועיל להעביר את שורש המסמך למיקום אחר, כגון קובץ מערכת מוזר. לדוגמה, אם אתה מכין מספר רב של אתרי אינטרנט מאותו הפעלת Nginx, ייתכן ויהיה מקום עבור כל מסמך שורש בנפרד של כל אתר כדי להתאים לצרכיו של אתר או לקוח מסוים.
במדריך זה, תעביר את שורש המסמך של Nginx למיקום חדש.
דרישות מוקדמות
כדי להשלים את המדריך הזה, תצטרך:
- שרת Ubuntu 22.04 ומשתמש לא-רוט עם הרשאות sudo. אפשר ללמוד עוד על איך להגדיר משתמש עם ההרשאות האלו במדריך שלנו התקנת שרת ראשונית עם Ubuntu 22.04.
- Nginx מותקן, בהתאם ל־איך להתקין את Nginx על Ubuntu 22.04.
- A TLS/SSL certificate configured for your server. You have three options:
- ניתן לקבל תעודה חינמית מ־Let’s Encrypt על ידי המעקב אחרי איך לאבטח את Nginx עם Let’s Encrypt על Ubuntu 22.04.
- ניתן גם ליצור ולהגדיר תעודת SSL אשרור על ידי המעקב אחרי איך ליצור תעודת SSL עצמאית עבור Nginx ב־Ubuntu 22.04.
- ניתן גם לרכוש אחת מספק אחר ולהגדיר את Nginx להשתמש בה על ידי המעקב אחרי השלבים 3 ו־4 של איך ליצור תעודת SSL עצמאית עבור Nginx ב־Ubuntu 22.04.
נעשה שימוש בשם הדומיין הדומיין שלך במדריך זה, אך יש להחליף אותו בשם הדומיין האישי שלך.
- A new location for your document root. In this tutorial, we will use the
/mnt/volume-nyc3-01
directory for our new location. If you are using Block Storage on DigitalOcean, this guide will show you how to create and attach your volume. Your new document root location is configurable based on your needs, however. If you are moving your document root to a different storage device, you will want to select a location under the device’s mount point.
שלב 1 — העתקת קבצים למיקום החדש
בהתקנת Nginx חדשה, שורש המסמך נמצא ב־/var/www/html
. במקביל למדריכי הנדרשים, יצרת שורש מסמך חדש, /var/www/your_domain/html
. ייתכן ויש לך שורשי מסמך נוספים גם כן. בשלב זה, נקבע את מיקום שורשי המסמך שלנו ונעתיק את הקבצים הרלוונטיים למיקומם החדש.
ניתן לחפש את מיקום שורשי המסמך שלך באמצעות grep
. נחפש בתיקיית /etc/nginx/sites-enabled
כדי להגביל את המיקוד שלנו לאתרים פעילים. הדגל -R
מבטיח ש־grep
תדפיס גם את השורה עם ההוראה root
ואת שמו המלא של הקובץ בפלט שלו:
אם עקבת למדריכי הנדרשים על שרת חדש, התוצאה תיראה כמו כן:
Output/etc/nginx/sites-enabled/your_domain: root /var/www/your_domain/html;
/etc/nginx/sites-enabled/default: root /var/www/html;
/etc/nginx/sites-enabled/default: # deny access to .htaccess files, if Apache's document root
/etc/nginx/sites-enabled/default:# root /var/www/your_domain;
אם יש לך הגדרות קיימות מראש, התוצאות שלך עשויות להשתנות ממה שמוצג כאן. בכל אופן, ניתן להשתמש במשוב מ־grep
כדי לוודא שאתה מעביר את הקבצים הרצויים ומעדכן את קבצי התצורה המתאימים.
עכשיו שאישרת את מיקום שורש המסמך שלך, ניתן להעתיק את הקבצים למיקומם החדש באמצעות rsync
. בשימוש בדגל -a
שומרים על ההרשאות ועל תכונות התיקיות האחרות, בעוד ש־-v
מספק פלט מפורט כך שתוכל לעקוב אחר התקדמות הסנכרון:
הערה: וודא שאין סיומת לספרייה, שעשויה להיתן במקרה של שלמות באוטומטי. כאשר יש סיומת, rsync
ישלוך את תוכן הספרייה אל נקודת העגינה במקום להעביר אותו אל ספריית html
מקורית.
תראו פלט כמו הבא:
Outputsending incremental file list
created directory /mnt/volume-nyc3-01
html/
html/index.html
sent 318 bytes received 39 bytes 714.00 bytes/sec
total size is 176 speedup is 0.49
עם הקבצים במקומם, בואו נמשיך לשנות את התצורה של ה- Nginx כך שתשקף את השינויים הללו.
שלב 2 — עדכון קבצי התצורה
ה- Nginx משתמש בקבצי תצורה גלובליים וספציפיים לאתר. נשנה את קובץ בלוק השרת לפרויקט your_domain
שלנו: /etc/nginx/sites-enabled/your_domain
.
הערה: זכור להחליף your_domain
בשם הדומיין שלך, וזכור שתערוך את קבצי בלוק השרת שיצאו כתוצאה מהפעלת הפקודה grep
בשלב 1.
התחל על ידי פתיחת /etc/nginx/sites-enabled/your_domain
בעורך:
מצא את השורה שמתחילה ב- root
ועדכן אותה עם המיקום החדש של השורש. במקרה שלנו זה יהיה /mnt/volume-nyc3-01/html
:
server {
root /mnt/volume-nyc3-01/html;
index index.html index.htm index.nginx-debian.html;
. . .
}
. . .
תשים לב למקומות אחרים בהם אתה רואה את נתיב השורש המקורי של המסמך המוצא על ידי grep
בשלב 1, כולל באלפיות או בניתובים. תרצה גם לעדכן אותם כדי לשקף את מיקום נתיב השורש החדש.
כאשר סיימת לבצע את כל השינויים הנדרשים, שמור וסגור את הקובץ.
שלב 3 — איתחול מחדש של Nginx
לאחר שסיימת לבצע את השינויים בתצורה, תוכל לאתחל מחדש את Nginx ולבדוק את התוצאות.
תחילה, וודא שתחביר הקובץ נכון:
אם הכל בסדר, הוא צריך להחזיר:
Outputnginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
אם הבדיקה נכשלה, חפש ותקן את הבעיות.
כאשר הבדיקה עוברת בהצלחה, אתחל מחדש את Nginx:
כאשר השרת אותחל מחדש, בקר באתרים המושפעים ווודא שהם עובדים כצפוי. כאשר אתה נוח בכך שהכל בסדר, אל תשכח להסיר את העותק המקורי של הנתונים:
כעת העברת בהצלחה את נתיב השורש של Nginx למיקום חדש.
מסקנה
במדריך זה, כיסינו איך לשנות את שורש המסמך של Nginx למיקום חדש. זה יכול לעזור לך בניהול בסיסי של שרתי אינטרנט, כמו ניהול יעיל של אתרים מרובים על שרת יחיד. זה מאפשר גם לך להנות מהתקני אחסון אלטרנטיביים כמו אחסון בלוקים ברשת, שיכולים להיות מועילים בקניית יכולת להתאים את האתר לשינויי הצרכים שלו.
אם אתה ניהול אתר אינטרנט תנועה או צומחת, עשוי להיות תמימת איך להגדיר את Nginx עם HTTP/2 כדי להנות ממהירות ההעברה הגבוהה שלו עבור תוכן.