![]() |
דרך נוספת להרצץ shell command דרך PHP?
שלום לכולם,
רציתי לדעת האם יש דרך אחרת מלבד פקודת ההרצה(exec\system\shell_exec וכו'). האם יש דרך אחרת לדוגמא לפתוח חיבור SSH לשרת ולבצע פקודה באצמעות חיבור למשתמש מסויים? ובמידה וכן, הדרך הזאת יותר יעילה? או תאפשר לי לבצע פקודות בסדר גודל רחב יותר(ז"א הרצת תוכניות גדולות)? תודה מראש לכולם על העזרה. |
חח מה הכוונה רחב יותר?
אחרי הכל אם ליוזר שממנו מורץ PHP יש גישות מלאות תוכל לבצע מה שתרצה עם exec() וsystem() ממ השימוש היחיד שעולה לי בראש על התחברות מרחוק זה התחברות לשרת SMTP, כי כשאתה עושה mail() מתבצע FORK לפרוסס והתחברות לשרת SMTP, שליחת מייל יחיד וסגירה ניתן להתחבר לשרת SMTP, לשלוח 50 מיילים ולסגור את הקונקשן |
ציטוט:
פשוט ברגע שאני משתמש בexec\system ושאר פקודות ההרצה אותו תהליך שאני מנסה להריץ נתקע על העמוד ולא ניתן לגלוש יותר במערכת...(ז"א עמודי PHP לא רצים יותר...). שאר הפקודות עובדות מעולה.., אין לי מושג למה זה ככה. אני לא יודע למה זה קשור(להגדרות של הPHP או למשהו אחר), אז חשבתי על דרך עיבוד אחרת באמצעות הPHP. |
הדף PHP צריך את התשובה מהתהליך שאתה מריץ?או שאתה רק רוצה להפעיל אותו?
|
כמו שבניה אמר
אם הדף צריך תשובה מהפקודה, המחשב שלך לא יתן לדברים אחרים לרוץ עד שתקבל תשובה אם זה בסך הכל פקודה ללא קבלת מידע נוסף אז לא תהיה הבעיה כי אין צורך בלחכות לקבל את המידע המוחוזר |
http://il.php.net/manual/en/ref.ssh2.php
אולי זה יעזור לך? |
הקטע שאני בטוח שבגלל שלתהליך הזה בעצם אין "סוף"... כי כול הקטע שהוא ירוץ ולא יפול. אז צריך לגרום איכשהו לעמוד לבצע את הפעולה ולא לחכות לתשובה ממנה...
|
אז למה בPHP?..
כעיקרון אתה יכול מקסימום לשחק עם זמן ההמתנה המקסימלי בPHP, אבל אולי תמצא משהו בפורומים בנוגע לבעיה הספציפית. אין לי מושג. |
יש לך אפשרות לא לחכות לתשובה או כן לחכות גם זה תלוי אם הכלי שלך מחזיר או לא
תרפרף בפונקציות ההרצה, יצא לי להתקל בבעיה דומה בעבר בהצלחה |
ציטוט:
אולי תוכל לעזור לי בזה? |
כל הזמנים הם GMT +2. הזמן כעת הוא 05:45. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ