פיתוח מקצועי מתמקד תמיד בכלים שלו - זוהי ערובה למילוי אמין ויעילה של התחייבויות. אירוח ושרתים משלו למטרות שונות במגוון תצורות פופולריות מרחיבים את היקף המשימות לפתרון, מגבירים את האבטחה והסודיות של פיתוחים.
Native HTTP: Apache, PHP, MySQL
שרת האינטרנט של Apache היה מנהיג מוצק מאז המאה הקודמת מכיוון שהוא מספק חוויה מהירה, אמינה ומאובטחת. מכונה פיזית ושרת המריץ לינוקס או חלונות הם הבסיס, HTTP הוא התוסף, למרות שהוא בעצם פרוטוקול תקשורת. מכונת Windows יכולה לשמש כשרת, אבל משפחת לינוקס מועדפת.
Apache ב-Windows הוא גרסה מקומית המשמשת במחשב יחיד כדי לשכפל את הפיתוח של משאבים המתארחים בשרתים חיצוניים. התקנה ב-Windows Server מקובלת, אבל לא מאוד פופולרית. הגדרת Apache ב- CentOs נותנת יותר אפשרויות ומשמשת לארגון שרתים ב- Local andרשתות גלובליות.
מאמינים ששרתי Apache משרתים יותר מ-50% מכל משאבי האינטרנט הפעילים, השאר נופל על מוצרים דומים של Microsoft, Sun ואחרות. למעשה, השרת הפיזי ומערכת ההפעלה שלו יכולים להיות כל דבר. שרת ה-HTTP ממוקם על פלטפורמה מוכנה ועובד במקביל ליישומים אחרים בה. אפאצ'י נחשב מקורי לכל משפחת הלינוקס, אבל בכל מקרה יש לו את המוזרויות שלו.
מערכות לינוקס בחינם, פשוטות ואמינות והיישומים שלהן. זה לא משנה במה אתה משתמש: התקנה והגדרה של Apache באובונטו אינה שונה בהרבה מ- CentOs, Debian או FreeBSD. לעתים קרובות הרוויה של מערכת הפעלה מסוימת עם תוכנה נוספת משחקת תפקיד.
משפחת לינוקס קטנה מבחינת מספר ה"קרובים" בקו של ליבה כזו או אחרת של המערכת. ההבדלים הם יותר בעלי אופי חברתי - במובן של התקשרות המפתחים לניסוח והטמעה של יכולות מערכת ההפעלה.
במציאות, כדי לפתור משימה ספציפית לגיוס אירוח, אתה צריך להחליט על הפונקציונליות הדרושה, הביצועים הנדרשים, סדרי עדיפויות רעיוניים ובחירה ספציפית של נציג לינוקס, או לעצור ב-Windows Server.
שינוי בסדר העדיפויות לפיתוח מקומי
קשה להעריך את תפקידה של הרשת העולמית בפיתוח התכנות, אבל קל לראות שינוי של ממש במרכז הכובד: נהוג לבצע אפליקציות מקומיות כמשאב אינטרנטי. פשוט תכתוב תוכנית עבורמחשב מקומי - אלה מנהלי התקנים, אנטי וירוסים, פרויקטים קטנים עם פונקציונליות פשוטה. שפת תכנות … VBA, אם כי ניתן להשתמש ב-C/C++ או C.
כל פרויקט מידע הוא משאב אינטרנטי ברשת המקומית של החברה, שאליו ניתן לגשת חלקית מהרשת הגלובלית, למשל, לתיאום פעולות העובדים מחוץ למשרד, בדרכים או בנסיעת עסקים.
MySQL, PHP, Apache: הגדרה למקרה שימוש מקומי - דינמיקה שונה לחלוטין של האפליקציה, הפונקציונליות הדרושה. החברות של היום, ללא קשר לגודל, מספר עובדים ותעשייה, שוקלות ברצינות תכנות אינטרנט, הן מקומיות והן גלובליות.
במקביל, ניתן להפיץ תכנות מקומי של משאב אינטרנט: משרדי החברה יכולים להיות ממוקמים בכל מקום, אבל זה לא האינטרנט, אלא רשת מקומית מבוזרת של החברה.
MySQL, PHP, הגדרה של Apache בצורה מקומית:
- קל לשכפול בין מחשבי רשת;
- מספק את היכולת לשנות באופן דינמי את הרכיב הפעיל או להתאים לו דוגמה כדי להעריך ניסיונות פריצה;
- נותן סיבה לפתח מערכת אבטחה נטולת סיכון של תקיפת שיטות רשת קלאסיות.
אם ניקח בחשבון ש-MySQL ו-Apache בסביבת Windows הם שירותים, וקוד PHP הוא טקסט רגיל המעובד על ידי כלי (מתורגמן PHP) שנקרא בזמן הנכון על ידי שרת HTTP, אזי רמת השינוי, ניידות וניידות קוד יהיוגבוה משמעותית מכלי פיתוח מקומיים.
הכנה להתקנת Apache
אפילו בעידן של "תחילת ההתחלה" מערכת ההפעלה יוניקס הגדירה את עקרונות הנאמנות הלא מדוברים. מאז, כל מה שנעשה במערכות דמויות Unix תורגם אוטומטית לפלטפורמות אחרות. הגדרת Apache ב-Windows היא קלה ביותר, אך משימות רציניות דורשות רמה טובה של ניסיון והבנה מפורטת של תצורת שרת
קודם כל, אתה צריך להוריד את הגרסה העדכנית ביותר של השרת (היום היא גרסה 2.4.33 מתאריך 2018-03-17) מהאתר הרשמי בפורמט zip-archive. יש לזכור בתחילה שגרסאות השרת הן רבות ומוצעות במשאבים רבים של צד שלישי, לכן חשוב לבחור יישום רשמי שמתארח במשאב אינטרנט מהימן.
בעבר, היה פופולרי להתקין שרת באמצעות מתקין מיוחד. כיום מקובל פשוט להרחיב ארכיון zip. זה קל יותר ומאפשר להבין את מהות תהליך ההגדרה, שהוא חשוב מאוד ובהמשך מאפשר לבצע אופטימיזציה של השרת לעומס ולפונקציונליות הרצויים.
עריכת קובץ התצורה
תצורת השרת נקבעת על ידי קבוצה של קבצי תצורה הממוקמים בתיקיית conf. קובץ התצורה הראשי של Apache הוא
ברוב המוחץ של המקרים, יש צורך לבצע שינויים בקובץ הראשי, להבהיר את תוכן הקבצים האחראים ל-ssl ולמארחים וירטואליים. הגדרות אחרות הן בדרך כללנעשים במהלך פעולת השרת כאשר מתעוררות בעיות או משימות נפתרות. בעיקרון, הגדרות נוספות קשורות לאופטימיזציה של Apache או להרחבת היכולות שלו.
כדי להפעיל את השרת בהצלחה, מספיק לערוך רק שורה אחת (בסדר - ה-38) - ותצורת ה-Apache הושלמה.
בגרסאות קודמות של תצורת השרת, היה צורך לבצע שינויים רבים במצב האמיתי, אך כעת יש משתנה SRVROOT "אוניברסלי". כדאי לציין את הערך הנכון שלו (הנתיב למיקום השרת), והכל יעבוד מיד.
נוהל פריסת שרת
עליך להיות זהיר לגבי מיקום השרת. אפאצ'י עצמו מעניין, אבל כשהוא מצויד ב-PHP ו-MySQL, הוא מעניין כפליים. עדיף כאשר כל מה שקשור לפיתוח אתרים נמצא במקום אחד. אתה יכול להסכים לנתיבי ברירת מחדל, אבל התכנות המודרני הוא לא כל כך אידיאלי ביישום שלו, אז תצטרך להיות עם האצבע על הדופק באופן חד משמעי ולעתים קרובות. בנוסף, בעת בחירת מיקום נוח, כל קובצי האתחול והתצורה, כמו גם יומנים על פעולת המוצרים המותקנים יהיו זמינים.
יש לפרוס את ארכיון הזיפ הרשמי של Apache שהורד במיקום הנבחר, למקם את הכלי ולעבוד בנפרד. בדוגמה זו, התיקיה C:\SCiA היא הכלי (Apache24, PHP, MySQL, …), והתיקיה SCiB היא העבודה של אתרי האינטרנט שנוצרים, מתוחזקים או משודרגים.
כתוצאה מכךבשלב הראשון של העבודה, רק תיקיות המשנה bin, cgi-bin, conf, error, … עם כל תוכנן נכנסות לתיקיית C:\SCiA\Apache24.
ערוך קובץ מארח
השלב השני הוא להגדיר נכון את קובץ המארחים - אינדיקציה לאיזה כתובות IP במחשב נתון ממופה לאילו שמות. אם המחשב יפתח או יתחזק אתר אחד בלבד, לא תוכל לשנות דבר.
ה-IP הבסיסי - 127.0.0.1 בדרך כלל תמיד מצביע על מארח מקומי. קובץ המארחים הפועלים נמצא בכתובת c:\Windows\System32\drivers\etc ונראה כך.
כדי לשים את קובץ המארחים במקום הנכון, עליך להשתמש בשורת הפקודה במצב מנהל. אתה יכול להכין את התוכן הנכון של הקובץ בכל מקום במערכת הקבצים של המחשב שלך, אבל אתה יכול לכתוב אותו רק ל-c:\Windows\System32\drivers\etc עם כלי בעל זכויות מנהל. הדרך הקלה ביותר לעשות זאת היא באמצעות שורת הפקודה.
התקן שרת אפאצ'י
אין דבר קל יותר. מספיק להפעיל את שורת הפקודה כמנהל וללכת לתיקיית C:\SCiA\Apache24. מכיוון שזהו נתיב במערכת Windows, נעשה שימוש באלכסונים קדימה. במקרה מסוים, הנתיב עשוי להיות שונה. אבל אם אתה עדיין יכול להתנסות עם שם התיקיה כדי לארח את השילוש הקדוש - Apache, PHP ו-MySQL - אז שינוי שמות התיקיות עבור כל אחת מהן אינו מעשי.
במקרה זה, ארכיון השרת פרוס בתיקייה C:/SCiA/Apache24,לכן, עליך לכתוב את הפקודה בתיקיית bin:
httpd.exe -k install
השרת יבדוק את קובץ התצורה ויתקין את עצמו. סביר להניח שיהיו שגיאות קלות, אבל אם תערוך את קובץ התצורה בצורה נכונה, כל השגיאות יהיו מינוריות וניתן לתקן אותן במהירות.
חלון (1) של שורת הפקודה - התקנת השירות, חלון (2) - רשימת השירותים שבהם הופיע השרת, חלון (3) - קובץ המקור index.html שנמצא בכתובת С:/SCiB /localhost/www, חלון (4) - התוצאה של השרת.
בדוגמה זו נעשתה טעות בכוונה: במקום להגדיר את הערך של המשתנה SRVROOT, בוצעו עריכות רבות "בדרך הישנה": הכל שונה באופן ידני. זה לא הפתרון הטוב ביותר. לפני יישום ידע, עליך להכיר את הגרסה העדכנית של המוצר. ככלל, דברים משתנים במהירות, ויש ליישם את הידע "עם ידיעת העניין והבנת המצב הנוכחי."
התרגול של פריסת ארכיון zip
אתרים מודרניים לא תמיד נכתבים במערכות ניהול תוכן. יש הרבה עבודת כפיים. בעיית העברת האתר לאחסון אחר הובילה לפתרון טוב – ארכיון zip. כיווץ תוכן במקום אחד, הרחיב אותו במקום אחר.
להקים מתקין זה תרגול טוב, אבל הדינמיקה של טכנולוגיית המידע המודרנית לא נותנת זמן לכתוב התקנות יפות. השתמש בהתקנה באמצעות פריסת ארכיון zip - מודרני, פרקטי ונוח. באפשרות זו, תצורת Apache מוגבלת לשינוי קבצי תצורה.
בעת התקנת השרת, חשוב לציין:
- היכן שהוא;
- היכן נמצא משאב האינטרנט (localhost);
- באמצעות ssl;
- מארחים וירטואליים.
המיקום האחרון רלוונטי כאשר הוא אמור לפתח או לתחזק מספר משאבים בו-זמנית בשרת. עבור מפתח אמיתי, זה חובה: גם אם הוא מספק את העבודה של אתר אחד, לא יהיה מיותר לעשות נפילה.
סטים של ג'נטלמנים
קל לפרוס ארכיון zip ברור, Apache (התקנה ותצורה) נמצא במרחק של שניים או שלושה קליקים בלבד. עם זאת, התוצאה כאשר המתקינים היו פופולריים הייתה שווה ערך. המפתח פשוט השקיע יותר זמן בפיתוח הגרסה הבאה של המוצר שלו. התקנת השרת, שפת השרת ומסד הנתונים היא בעצם רק קבוצה של קבצים, שירותי התחלה, קובץ מארחים ונתיבי ברירת מחדל בנתיב המשתנה של מערכת ההפעלה.
הופעתן של דנבר וערכות הפיתוח של ג'נטלמנים דומות הייתה צעד מהפכני בקו של פשטות ונוחות, אבל אל תטעו. מהפכה ותכנות הם דברים בלתי תואמים לחלוטין. הראשון הוא ילד של סכסוך ופתרון הסוער שלו, השני הוא עניין רציני הדורש רוגע מוחלט, דייקנות, דיוק, עקביות, קשב, בטיחות, אמינות.
הגדרת שרת ה-Apache היא הליך רציני שצריך לקחת בזהירות רבה ויש לעשות הכל כדי שמחר תוכלו לשנות ולהבהיר משהו.
ברוב המקרים, פיתוח אתריםמשאבים הם תהליכים די ארוכים שבהם הדרישות לשירותים (Apache, PHP, MySQL,…) משתנות במהירות, אבל תמיד יש זמן להבין את המשימה הבאה ואת הפתרון האופטימלי שלה. אבל זו לא סיבה להמשיך בקשר לסטים של ג'נטלמן. הזמן עובר, אבל האדון לא משתנה, זה טיעון הרבה יותר משכנע מהצהרת דנבר - זה פשוט, מהיר ונגיש.
אתרים מרובים - שרת אחד
הגדרת Apache 2.4 עבור מארח יחיד היא מותרות לא מוצדקת. למרות העיצוב הקומפקטי שלו, שרת זה נושא משקל עצום של אחריות על יותר ממחצית ממשאבי האינטרנט הפעילים של האינטרנט. בנוסף, לא לכל המשאבים יש חלק מייצג והם גלויים ברשת.
השרת יכול לשמש כבסיס נתונים, כנקודת העברת מידע, כמסנן, כמנתח, כמנגנון עבודה בתהליך מידע גלובלי יותר. כתוצאה מכך, הגדרת מארחים וירטואליים של Apache היא כמעט תמיד הכרחית.
שרת אחד יכול לתמוך במשאבי אינטרנט רבים ככל שתרצה, לשם כך עליך לבטל את ההערה לקו 501 בקובץ
כלול conf/extra/httpd-vhosts.conf
ותאר את כל המארחים הדרושים בקובץ
extra\httpd-vhosts.conf
ייתכן שתצטרך להבהיר באילו יציאות ו-IP השרת מאזין, אבל זו בעיה נפרדת, בפעם הראשונה אתה יכול להגביל את עצמך למה שיש.
יש לציין שבדוגמה, לנוחות התיאור של משאבי אינטרנט וירטואליים אמיתיים (ויש רבים מהם), מוצג משתנה(DOCROOT) עם הנתיב לתיקיה המשותפת של כל משאבי האינטרנט הזמינים דרך השרת המותקן.
תצורת SSL של Apache זמינה בצורה דומה. בקובץ httpd.conf, אתה רק צריך להשאיר שורות "כמות שהם" מ-524 עד 531, שאחראיות על פעולת ה-SSL.
פשטות ומורכבות אפאצ'י
הימים שבהם הקמת שרת הייתה אתגר אמיתי חלפו מזמן. כיום, הגדרת Apache היא הליך פשוט מאוד שאינו דורש מיומנויות מיוחדות מהמפתח.
שלושה שלבים פשוטים:
- הרחבת ארכיון;
- שנה קובץ תצורה;
- התקן את השרת.
כתוצאה מכך, Apache מתפקד במלואו. אם אתה לא לוקח בחשבון את הדקויות של תהליך הפעלת השרת בעומס מירבי או עושה פיתוח מקומי במחשב Windows, אין צורך בידע נוסף.
יכולים להתעורר קשיים במערכות לינוקס. הבנה שונה משמעותית של מערכת הקבצים, זכויות המשתמש והקבוצה, כמו גם ארגון תהליך האינטראקציה עם יישומים אחרים דורשים מהמפתח להיות מוכשר יותר ולהבין איך מחשבי לינוקס עובדים.
הגדרת Apache בכל מערכת לינוקס פותחת הרבה יותר הזדמנויות עבור המפתח ומספקת גישה לרשת המקומית ולאינטרנט. לפי המסורת, מחשב Windows הוא תחנת עבודה מקומית, והשרת הוא פנימי שם. מחשב לינוקס הוא שרת קבצים, שרת אינטרנט וצומת רשת מקומית או נקודה במרחב האינטרנט.
סביבה מקצועיתמפתח
Apache הוא אבן בניין בסיסית של מרחב האינטרנט שניתן להגדיר בקלות ובקלות, להשתמש בו ויהפוך לעמוד השדרה של תשתית הרשת של החברה.
היגיון זה מניח שיש לפחות שרת אחד ברשת המריץ תחנות עבודה CentOS, Ubuntu, FreeBSD, Windows. זה אופטימלי להחזיק שני שרתי לינוקס (ראשי ועזר), הגדרת Apache למחשב מקומי בסביבת Windows. במקרה של התקפת וירוס או מצב בלתי צפוי, שרת העזר יחליף את הראשי, והשרת הראשי יתוקן וישוחזר. אתה יכול להחליף את ההתקנה המקומית של Apache בתחנת עבודה (תחת Windows) מהארכיון.
ניתן לחדד ולהשלים את הפתרון הטריוויאלי הזה בפועל. גודל תזרימי המידע של החברה יכול לקבוע את התצורה הרצויה ואת מספר השרתים הנדרש. למעשה, Apache נועד לעבוד תחת עומס, אבל שום דבר לא מונע ממך לחלק את האחריות של שרת אחד על כמה. פתרון שלוקח בחשבון את המאפיינים של חברה מסוימת הוא תמיד מבטיח יותר מאשר התאמת אפשרות של צד שלישי.