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

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [PHP] בדיקת תגובה משרת מרוחק (https://hosts.co.il/forums/showthread.php?t=60426)

Gil B 27-02-08 16:34

[PHP] בדיקת תגובה משרת מרוחק
 
יש לכם מושג איך אני יכול לבדוק תגובה של שרת מרוחק לכתובת שנאי נותן? [באמצעות בדיקת PING?]
[אם אני אתן http://walla.co.il אני רוצה שהוא יבדוק אם יש תגובה או לא..]


אני לא יודע ולא בטוח אם יש פונקציה בנויה של זה...
תודה רבה =]

Rom 27-02-08 16:47

סוקטים

בניה 27-02-08 16:56

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

Gil B 27-02-08 17:21

אני מתכוון לבדוק אם הדומיין קיים או לא.
פשוט לא באצמעות SOCKET חיבור לWHOIS.
חשבתי על משהו בסגנון System(ping); אני יודע שיש פונקצית עבודה עם זה, רק שלמיטב ידיעתי צריך לבטל את האבטחה שיש על הפונקציה..

למישהו יש עוד רעיונות בלי שאצטרך לעשות את זה?

pirsomet 27-02-08 17:48

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

if(@fopen("http://www.example.com/", "r"))
{
echo "server online";
}


Gil B 27-02-08 18:12

pirsomet אתה בטוח שSYSTE,M PING לא עובד על כל האתרים? זה לא נשמע הגיוני בכלל

pirsomet 27-02-08 18:52

אני בטוח אבל בעיקרון יכול להיות שאחוז האתרים אלו הוא ממש קטן.

reXtea 27-02-08 19:50

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

OrPol 29-02-08 17:17

ציטוט:

נכתב במקור על ידי pirsomet (פרסם 612223)
לא כל השרתים עונים על PING. כלומר יכול להיות מצב שהרשת זמין אבל לPING הוא לא עונה.
אני מציעה לך לעשות משהו כמו:
קוד:

if(@fopen("http://www.example.com/", "r"))
{
echo "server online";
}


זה לא יחזיר לו SERVER ONLIE גם אם זה יהיה ERR 404 ?

pirsomet 29-02-08 17:59

זה לא יחזיר, בדקתי עכשיו. אבל עדיין בטח גם זה יהיה נכון לא לגבי כל המקרים של 404

בניה 01-03-08 18:20

ציטוט:

נכתב במקור על ידי Gil | Polaczek ltd (פרסם 612211)
אני מתכוון לבדוק אם הדומיין קיים או לא.
פשוט לא באצמעות SOCKET חיבור לWHOIS.
חשבתי על משהו בסגנון System(ping); אני יודע שיש פונקצית עבודה עם זה, רק שלמיטב ידיעתי צריך לבטל את האבטחה שיש על הפונקציה..

למישהו יש עוד רעיונות בלי שאצטרך לעשות את זה?

מה זה קיים?
לא פנוי/כבר תפוס?
גם אם דומיין רשום ותפוס ולא מכוון על IP או שהIP שהוא יושב עליו כרגע מכובה אתה לא תקבל תגובה מfsockopen או ping כך שזה לא עוזר לך יותר מדי.

אם אתה רוצה לבדוק אם שרת HTTP שמכוון עליו דומיין מסויים פועל(וזה גם לא בטוח ב100%)
תעשה fsockopen לפורט 80.


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

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