nginx

שימוש ב nginx במערכת ההפעלה חלונות


english
русский

简体中文
עברית
日本語
türkçe

חדשות [אנגלית]
אודות
הורדה [אנגלית]
דיווחי אבטחה [אנגלית]
תיעוד
שאלות נפוצות [אנגלית]
קישורים [אנגלית]
תמיכה [אנגלית]

trac
wiki
twitter
nginx.com
This translation may be out of date. Check the English version for recent changes.
בעיות ידועות
שיפורים עתידיים אפשריים

nginx/Windows משתמש ב API הטבעי של חלונות, Win32 API (ולא בשכבת אמולציה של Cygwin). נכון למועד כתיבת שורות אלה, שיטת היידוע select היא זו שנמצאת בשימוש, ולכן אין לצפות לרמת ביצועים גבוהה וליכולת גידול. עקב כך וגם בעקבות בעיות ידועות אחרות, nginx/Windows נחשבת כגירסת בטא. ישנה פונקציונליות כמעט מלאה ב nginx/Windows ביחס לגירסת Unix, חוץ מפילטר XSLT, פילטר תמונות, מודול GeoIP ושפת Perl משובצת.

כדי להתקין את nginx/Windows, יש להוריד את קובץ הזיפ של גירסת הפיתוח האחרונה 1.3.11, כיוון שענף הפיתוח מכיל את כל התיקונים הידועים, בייחוד אלו הקשורים לחלונות. אחרי ההורדה, יש לפרוס את קובץ הזיפ, להיכנס לתיקיה nginx-1.3.11, ולהריץ את nginx. הנה דוגמא עבור תיקיית השורש של כונן C:

cd c:\
unzip nginx-1.3.11.zip
cd nginx-1.3.11
start nginx

תוכלו להריץ את כלי שורת הפקודה tasklist כדי לראות תהליכים של nginx:

C:\nginx-1.3.11>tasklist /fi "imagename eq nginx.exe"

Image Name           PID Session Name     Session#    Mem Usage
=============== ======== ============== ========== ============
nginx.exe            652 Console                 0      2 780 K
nginx.exe           1332 Console                 0      3 112 K

אחד מהתהליכים הוא התהליך הראשי (מנהל), והאחר הוא תהליך עובד. אם nginx לא מתחיל לפעול, יש לעיין בקובץ logs\error.log כדי לבדוק את הסיבה. אם קובץ הלוג לא נוצר, הסיבה צריכה להיות מדווחת ב Event Log של חלונות. אם הנכם מקבלים דף שגיאה במקום העמוד הרצוי, עליכם לעיין בקובץ logs\error.log גם כן, כדי לראות מה הסיבה.

nginx/Windows משתמש בתיקייה שממנה הוא הופעל בתור תיקיית הקידומת לכל הנתיבים היחסיים שבקובץ התצורה. בדוגמה שלעיל, תיקיית הקידומת תהיה C:\nginx-1.3.11\. על נתיבים בקובץ התצורה להיות בסגנון Unix בלבד, באמצעות לוכסנים קדמיים:

access_log   logs/site.log;
root         C:/web/html;

nginx/Windows רץ כיישום קונסול סטנדרטי, ולא כשירות (service) במערכת, וניתן לנהלו באמצעות הפקודות הבאות:

nginx -s stop יציאה מהירה
nginx -s quit יציאה מסודרת
nginx -s reload שינוי תצורה, הפעלת תהליך עובד חדש, סגירת תהליך עובד ישן באופן מסודר
nginx -s reopen פתיחה מחדש של קובצי הלוג

בעיות ידועות

  • למרות שניתן להפעיל מספר תהליכים עובדים, רק אחד מהם עושה בפועל את העבודה.
  • תהליך עובד לא יכול לטפל ביותר מ 1024 חיבורים פעילים בו זמנית.
  • מודול המטמון ומודולים אחרים אשר דורשים תמיכה בזיכרון משותף, לא עובדים בחלונות ויסטה או גירסאות מאוחרות יותר, עקב הפעלת טכניקת address space layout randomization המופעלת בגירסאות אלה של חלונות.

שיפורים עתידיים אפשריים

  • הרצה כשירות במערכת (Service).
  • שימוש ב I/O completion ports כשיטת יידוע.
  • שימוש במספר נימי עובדים בתוך תהליך עובד אחד.