interhost

הבלוג
הכל על שרתים, תקשורת ולינוקס

ארכיון פוסטים מהחודש "נובמבר, 2009"

הוספת הוסטים/סאב דומיינים ב-lighttpd

יום ראשון, 29 בנובמבר, 2009

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

את הניהול בCLI מבצעים בעזרת SSH CLIENT, אני מאוד אוהב את הSECURECRT שמאפשר לי לפתוח עשרות חלונות בו זמנית וגם שומר לי את הסיסמאות של כל השרתים ואפילו מאפשר להריץ סקריפטים שמגיבים לאיוונטים, זהו קליינט של חברת VANDYKE והוא חינמי ל30 ימי נסיון. ישנו גם קליינט פשוט יותר והמפורסם יותר שנקרא PUTTY, ניתן להורידו חינם (כל מה שצריך הוא לכתוב PUTTY בגוגל) ולהוריד את הקובץ, הוא לא דורש התקנה וניתן להריצו ישר.

אדגים כיצג לבצע זאת:

שלב ראשון: חיפוש PUTTY בגוגל

חיופוש PUTTY

חיופוש PUTTY

שלב שני: הורדת PUTTY

הורדת PUTTY

הורדת PUTTY

שלב שלישי: התחברות,
מקישים את כתובת השרת ואת הפורט 22

התחברות לשרת ב-SSH

התחברות לשרת ב-SSH

שלב רביעי:  אישור מפתחות
מקישים על 'YES' לאישור המפתחות

אישור מפתחות

אישור מפתחות

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

ביצוע לוגין למערכת

ביצוע לוגין למערכת

שלב שישי: יצירת תיקיה
יצירת תת תיקיה נעשית בעזרת פקודת mkdir, יוצרים את התת-תיקיה בצורה הבאה:
mkdir /home/user/public_html/subdomain1
כאשר נותנים את הנתיב המלא עד לתת תיקיה בשם 'subdomain1'.
לאחר מכן נותנים את ההרשאות המתאימות לתיקיה של אותו יוזר:
chown user.user /home/user/public_html/subdomain1

יצירת תת תיקיה

יצירת תת תיקיה

שלב שביעי: עריכת קובץ lighttpd.conf
עורכים את קובץ Lighttpd.conf בעזרת עורך הטקסט vim כך:
vim /etc/lighttpd/lighttpd.conf
בכדי להוסיף תוכן יש ללחוץ על 'a' , ומוסיפים את השורות הבאות:

$HTTP["host"] =~ "^subdomain1\.interhost\.co\.il$" {
server.document-root = "/home/user/public_html/subdomain1"
}

לאחר ההוספה לוחצים על ESC ואז בכדי לשמור ולצאת מקישים את הרצף:
x:

עריכת קובץ הגדרות lighttpd.conf

עריכת קובץ הגדרות lighttpd.conf

לבסוף שיוצאים יש לאתחל את שרת ה lighttpd בפקודה הבאה:

/etc/init.d/lighttpd restart

זהו זה, כעת ניתן להעתיק קבצים לתיקיה החדשה ולגלוש לסאב-דומיין החדש.

תיקון וייעול טבלאות MySQL

יום רביעי, 4 בנובמבר, 2009

כידוע MySQL עובד עם אינדקסים על מנת לשפר את הביצועים, עם הזמן קבצי אינדקס של טבלאות MySQL, מבוססות סטוראג' אינג'ין של MyISAM, מתבלגנים ולא מסודרים בצורה אופטימלית וכתוצאה מכך הביצועים נפגעים בהדרגה עם הזמן. בהרבה מקרים הרצת OPTIMIZE (ייעול) עם הטבלאות משפר משפרת מיידית את הביצועים ומורידה עומס מהשרת.

תופעה נוספת שיכולה לקרות היא שעמודות, שורות, שדות  או טבלאות שלמות נפגעות (מסיבות שונות כגון כשל בדיסק, כשל במערכת הקבצים, כיבוי לא צפוי של המערכת או של השרת). לסטוראג' אינדג'ין של MyISAM ישנה אפשרות להריץ פקודת REPAIR (תיקון) על הטבלאות.

הבעיה היא שאת הפקודות מריצים על טבלה בודדת, מה קורה שרוצים להריץ על כל הטבלאות במסד? ומה קורה אם רוצים להריץ על כל המסדים והטבלאות? לשם כך בנינו סקריפטים ב-PHP שמריצים משורת הפקודה. הסקריפט רץ על כל הטבלאות של כל המסדים ומבצע את פעולת התיקון והייעול.

לפני ההרצה יש לערוך את בקבצים את השורה הבאה ולהכניס את הסיסמא של root (או משתמש אחר בעל הרשאות root):

$conn = mysql_connect('localhost', 'da_admin', 'mypassword');

אופן הרצה (משורת הפקודה בשרת):

# php repair.php
# php optimize.php

הסקריפטים ירוצו מספר דקות (תלוי בגודל המסדים). תחילה רצוי להריץ את ה-repair כי אם יש טבלאות פגומות ה-optimize לא יעבור בצורה חלקה.

מורידים את ה-repair.php כאן:

http://www.interhost.co.il/repair.php.txt

ואת optimize.php מכאן:

http://www.interhost.co.il/optimize.php.txt

אחרי ההורדה רק תשנו את סיומות ל-.php בלבד (ללא txt בסוף).
בהצלחה!