מחשביםתכנות

Nginx: הגדרה והתקנה

מהו Apache, nginx? מטרה, תכונות, אפשרויות התאמה אישית - אלה הם הדברים אשר כל מפתח אינטרנט צריך להיות מוכר לבחון ההתפתחויות שלהם.

אודות nginx לומר מילה

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

התחל, הפעלה מחדש, ואת היומן

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

אות -s nginx

במקרה זה, אתה יכול להחליף את הפקודות הבאות (חייב לבוא מצד המשתמש כי השיק את הכלי):

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

באמצעות כלי עזר

תהליכי הגדרה יכולים גם להתבצע באמצעי יוניקס (שירות להרוג יידון כדוגמא). הם בדרך כלל משתמשים במנגנון כדי לשלוח את האות ישירות נתוני התהליך. הם מקושרים באמצעות מזהה. מידע זה נשמר בקובץ nginx.pid. נניח כי אנו מעוניינים בתהליך №134. ואז, להשלמת חלקה של צורך לשלוח אלינו את הפרטים הבאים:

להרוג -s QUIT 1628

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

נ.ב. -ax | grep nginx

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

המבנה של קובץ התצורה

התקנה והגדרת nginx כוללת עבודה עם מודולים. הם מוגדרים באמצעות ההנחיות המפורטות בקובץ התצורה. הם יכולים להיות פשוטים או לחסום. הסוג הראשון מורכב ההנחיות והפרמטרים, אשר מופרדים על ידי רווחים, וסופם מסומן באמצעות פסיק - (;). הבלוק יש מבנה דומה. אבל במקום סגירת הוראה זו ממוקמת סט נוסף של הוראות אשר ממוקמות בתוך הסוגריים המסולסלים ({} הוראות). אם הם יכולים לפרסם את השמות ופרמטרים נוספים של התהליך, הם נקראים מבנים כאלה יש את ההקשר. כדוגמה, http, מיקום השרת.

הפצה של תוכן סטטי

זהו אחד האתגרים החשובים ביותר העומדים בפני תצורת nginx. תחת ההתפלגות הסטטיסטית של התוכן תמונות נועדו ו- HTML-דפים (לא דינמי). נניח שאנחנו צריכים לעבוד אחד על הגדרת nginx אשכול ניקס. האם זה קשה לעשות זאת? לא, בואו נסתכל על דוגמא. לפני היציאה זה, יש צורך לפרט את התנאים של הבעיה. אז, בהתאם לבקשה, קבצי יבוא מספריות מקומיות שונות. לפיכך, ב / נתונים / www עלינו HTML-מסמכים. וגם את המדריך / נתונים / תמונות המכיל תמונות. nginx ההגדרה האופטימלית במקרה זה דורש לערוך את קובץ ההגדרות, אשר עליך להגדיר את היחידה בשרת בתוך http. כדי לתמוך בשני ישמש מיקום.

יישום: שרת

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

http {

שרת {

}

}

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

יישום: מיקום

נקבע בתוך השרת:

מיקום / {

שורש / נתונים / www;

}

הנוכחות של הסימן "/" יש צורך להשוות את הנתונים שהתקבלו ולראות אם יש כאלה כתובת מבקשת המעובד כאן. אם אין בעיות, ולאחר מכן ציין את הנתיב / נתונים / www אל הקובץ הרצוי שנמצא במערכת המקומית. אם יש התאמה עם כמה רחובות, ולאחר מכן בחר את אחד עם הקידומת הארוכה. בדוגמא זו, האורך שווה לאחד, כלומר, השימוש יהיה אך ורק במקרה שאין "תחרות". עכשיו, תן לזה עדכן:

מיקום / images / {

שורש / נתונים;

}

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

שרת {

מיקום / {

שורש / נתונים / www;

}

מיקום / images / {

שורש / נתונים;

}

}

זוהי גרסה עובדת של מקרה זה, תקן №80 הנמל. שרת זה בלי שום בעיות יכול להיות זמין במחשב שלך, אם אתה רוצה ללכת לכתובת: http: // localhost /. איך זה כל עובד?

עקרון הפעולה של הדוגמה

אז, כשהם מגיעים שאילתות שמתחילות עם / תמונות, שרת הקבצים בספרייה המתאים יישלח למשתמש. בהיעדרו יינתן מידע המעיד על השגיאה 404. אם בצע תצורת nginx במחשב המקומי, אזי http הבקשה: //localhost/images/example.png נקבל קובץ /data/images/example.png שמיקומו. כשמציינים חיפוש "/" סמל ינוהל בספרייה / נתונים / www. אבל אנחנו רק שינינו את התצורה. זה מתחיל לעבוד, הוא חייב להפעיל מחדש. כדי לעשות זאת, השתמש רענן -s nginx. במקרה שבו הפעולה הרגילה אינה אפשרית, ב access.log וקבצי error.log הממוקם ההוראה / usr / local / nginx / יומנים, אתה יכול לחפש את סיבת התקלה.

יצירת שרת פרוקסי פשוט

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

שרת {

להקשיב 8080;

שורש / נתונים / up1;

מיקום / {

}

}

עכשיו, בואו לפענח עבורכם: יצירת שרת פשוט. הוא יקשיב יציאת 8080 אין להקשיב, אז השרת יפעל על 80 th. יוצג כל הבקשות במערכת הקבצים המקומית כי הם מכוונים אל הספרייה / נתונים / up1 (כמובן, לפני שזה יהיה הכרחי כדי ליצור אותו). כדי להיות מסוגל לבדוק את זה יש צורך למקם את קובץ index.html. בשל המיקום של הנחיות בהקשר של שרת השורש נוכל להשתמש במיקום בכל העת (כפי ובכך הגבלות גישה בוטלו). כעת אנו פועלים כדי ליצור פרוקסי. כדי שזה יעבוד, אנחנו צריכים הוראת proxy_pass, אשר תפורט שם פרוטוקול, ומתקן הנמל כפרמטרים (לחיבור מקומי זה ייראה http: // localhost: 8080). קבל תוצאה זו:

שרת {

מיקום / {

http proxy_pass: // localhost: 8080;

}

מיקום / images / {

שורש / נתונים;

}

}

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

מיקום ~ \ (GIF | jpg | png) $ {.

שורש / נתונים / images;

}

תצורת פרוקסי הסופית היא כדלקמן:

שרת {

מיקום / {

proxy_pass http: // localhost: 8080 /;

}

מיקום ~ \ (GIF | jpg | png) $ {.

שורש / נתונים / images;

}

}

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

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 iw.unansea.com. Theme powered by WordPress.