मेरे पास एक लंबी PHP PHP स्क्रिप्ट है और जब भी मेरा इंटरनेट कनेक्शन दूसरे के लिए बाहर निकलता है तो ब्राउजर स्क्रिप्ट को रोकता है। मैं अपनी स्क्रिप्ट चलाने के लिए 8 घंटे तक नहीं बैठ सकता, इसलिए मुझे लगा कि मैं इसे एसएसएच के माध्यम से चला सकता हूं और अगले दिन वापस आ सकता हूं और अपनी आउटपुट फाइल प्राप्त कर सकता हूं। हालांकि एसएसएच में स्क्रिप्ट नामों को सरल टाइप करना काम नहीं लगता है। क्या एसएसएच के माध्यम से PHP स्क्रिप्ट चलाने के लिए एक विशेष कमांड है?मैं एसएसएच के माध्यम से एक PHP स्क्रिप्ट कैसे चला सकता हूं?
उत्तर
सामान्य तौर पर, आप इस
php myscript.php
ssh के माध्यम से एक दूरस्थ होस्ट पर यह कर की तरह कमांड लाइन से स्क्रिप्ट चलाने के लिए सक्षम होना चाहिए इस
ssh [email protected] "php myscript.php"
कोशिश की तरह किया जा सकता है
php script.php.
यदि यह काम नहीं करता है, तो आपको php निष्पादन योग्य का पता लगाना होगा और फिर इसे निष्पादित करना होगा।
बीटीडब्ल्यू, आप स्क्रीन का उपयोग कर सकते हैं, इसलिए यदि कंप्यूटर से कनेक्शन खो गया है, तो स्क्रिप्ट अभी भी चलती है।
उपयोग स्क्रीन द्वारा आपका क्या मतलब है? मैंने कभी भी –
के बारे में नहीं सुना है मैंने अपनी पोस्ट में स्क्रीन समझाई है: डी – Mez
मुझे लगता है कि आप लिनक्स का उपयोग करते हैं। स्क्रीन एक ऐसा प्रोग्राम है जो शैल बंद होने पर भी प्रोग्राम चलाता रहता है। आप आसानी से सत्र को पुनर्स्थापित कर सकते हैं ताकि लिपि निरस्त नहीं हो सके। देखें http://www.gnu.org/software/screen/ – Ikke
वैकल्पिक रूप से आप केवल ignore_user_abort()
पर कॉल कर सकते हैं और पृष्ठ को हिट करने के बाद अपने ब्राउज़र को बंद कर सकते हैं।
यदि आपका इंटरनेट कनेक्शन बाहर निकल रहा है, तो शायद यह एसएसएच में भी एक समस्या होगी, और साथ ही, एक एसएसएच विंडो खोलने के लिए हमेशा सबसे अच्छी चीज नहीं होती है (यदि आप गलती से बंद करते हैं तो क्या होता है एसएसएच विंडो?)
मैं सर्वर में एसएसएचइंग का सुझाव दूंगा, फिर "screen" नामक एक प्रोग्राम चला रहा हूं, जो आपके कनेक्शन को छोड़ने के बावजूद जो कुछ भी आप चलाते हैं, उसे चलाना जारी रखेगा।
सर्वर में इस, पहले ssh करते हैं, और टाइप
screen
करने के लिए इस स्क्रीन को लोड होगा, स्वागत स्क्रीन
बायपास करने के लिए अब, अपने PHP स्क्रिप्ट चलाने दर्ज मारा
php /path/to/your/php/script.php
यह PHP चल रहा है,
अब आप विंडो बंद कर सकते हैं यदि आप चाहते हैं, और स्क्रिप्ट
चल वापस अपनी स्क्रीन सत्र के लिए प्राप्त करने के लिए पर रखेंगे, सर्वर से कनेक्ट, और चलाने के आदेश
screen -raAD
जो आपको अपने सत्र में दोबारा जोड़ देगा, जैसे कि आप खिड़की हर समय खुलेंगे।
यह वास्तव में, या यहाँ तक कि एक कंसोल आधारित आईआरसी सत्र चलाने के लिए घना स्क्रिप्ट को चलाने के लिए काफी अच्छा है: डी
क्या हर किसी ने कहा कि इसके अलावा, आप शायद के रूप में अच्छी nohup
का उपयोग करना चाहेंगे।
ssh [email protected] "nohup php script.php"
यह इसी तरह से चल रहा है, भले ही आपके ssh कनेक्शन चला जाता है रखेंगे। यदि आप चाहें तो nohup
के स्थान पर आप screen
का भी उपयोग कर सकते हैं।
nohup php -q /path-to-script/file.php & बाहर निकलने
php फ़ाइल निष्पादित और प्रक्रिया समाप्त बिना कंसोल बंद हो जाएगा।
और किसी भी रीडायरेक्ट की आवश्यकता है। – strager