הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   תחזוק שרתים ושירותי רשת נוספים (https://hosts.co.il/forums/forumdisplay.php?f=29)
-   -   בעיה... httpd restart (https://hosts.co.il/forums/showthread.php?t=66487)

SmartSeo 17-08-08 21:09

בעיה... httpd restart
 
לפעמים כשאני עושה ריסטרט ל HTTPD זה עושה לי את השגיאה הבאה:
(98)Address already in use: make_sock: could not bind to address [::]:80.

ואז רק reboot פותר את זה..
איך מתקנים?

Inet 17-08-08 21:15

זה אומר שיש תוכנית מסויימת שמשתמש בפורט 80 ובגלל זה האפצ'י לא יכול להעלות.
תבדוק את כל השירותים שפועלים על השרת ואת הפורטים הנכנסים / יוצאים בשרת ותכבה את הישום שמשתמש בפורט.

אחרי שאתה מנסה לעשות ריסטר ומקבל את הבעיה כנס לדומיין / אייפי דרך הדפדפן ותבדוק איזה דף אתה מקבל, אולי תוכל לקבל עוד מידע אודות הישום שתופס את הפורט)

יש עוד כמה דברים שעלו לי בראש: תבדוק בקובץ CONF של האפצ'י האם הוא מקשיב לפורט 80

בנוסף דרך טובה לבדוק - ב /etc/httpd/
תריץ את הפקודה
find . | xargs grep "0.0.0.0:80"
אם זה מחזיר לך ערך כלשהו, תגיד לנו מהו ונמשיך משמה

דניאל 17-08-08 23:35

תשובה יפה של Inet,

בנוסף,
על מנת לגלות מה עוד רץ בפורט 80 ניתן להשתמש ב
netstat -pln
או
ps -aux

בהצלחה.

sheeze 19-08-08 12:12

הדגלים p ו-l לא נתמכים בכל linux\unix.
הבעיה יכולה לנבוע, כמו שאמרו, שהפורט בשימוש או סגור. כדי לגלות את זה: "netstat -na | grep "\*.80
יכול להיות שיש חיבורים תקועים על close_wait ואז אין הרבה ברירות פרט לריבוט. אם יש פרוסס שמאזין לפורט, תוכל לגלות זאת ע"י הפקודה lsof ולהרוג את הפרוסס כך.

ומה הקשר ps aux, אין שם פלט לגבי פורטים... רק פרוססים ו-thread-ים...

דניאל 19-08-08 15:25

ציטוט:

נכתב במקור על ידי sheeze (פרסם 660853)
ומה הקשר ps aux, אין שם פלט לגבי פורטים... רק פרוססים ו-thread-ים...

אחלה,
דרך טובה לראות אם יש פרוסס שלא אמור לרוץ שם.

sheeze 19-08-08 19:49

אז למה להציג את ה-thread-ים?
אם בשרת WEB ממוצע רצים כ-100 פרוססים שזה מספיק בלאגן, למה להוסיף לרשימה עוד איזה 200+ thread-ים?
כל אחד אבל איך שנוח לו, לדעתי סתם מקשה על העבודה.

SmartSeo 22-08-08 15:02

כשאני מריץ "netstat -na | grep "\*.80 זה מביא
-bash: line 36: netstat -na | grep *.80: command not found

וכשאני מריץ find . | xargs grep "0.0.0.0:80"
faild with return code 123

עריכה: הרצתי /etc/httpd$ find . | xargs grep "\*.80"

וזה מה שיצא
ציטוט:

./conf.2.2.backup/extra/httpd-vhosts.conf:NameVirtualHost *:80
./conf.2.2.backup/extra/httpd-vhosts.conf:<VirtualHost *:80>
./conf.2.2.backup/extra/httpd-vhosts.conf:<VirtualHost *:80>
./conf.2.2.backup/httpd.conf.default:#NameVirtualHost *:80
./conf.2.2.backup/httpd.conf.default:#<VirtualHost *:80>
./conf.2.2.backup/original/extra/httpd-vhosts.conf:NameVirtualHost *:80
./conf.2.2.backup/original/extra/httpd-vhosts.conf:<VirtualHost *:80>
./conf.2.2.backup/original/extra/httpd-vhosts.conf:<VirtualHost *:80>


כל הזמנים הם GMT +2. הזמן כעת הוא 06:47.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ