2013-05-07 13 views
5

स्थिति:
मेरा PHP/html पृष्ठ हर 5-10 मिनट या उससे भी कम डोमेन पर किसी अन्य पृष्ठ की सामग्री को पुनर्प्राप्त करता है। मैं अपने डोमेन पर किसी अन्य तत्व से सामग्री का अनुरोध करने के लिए एक जावास्क्रिप्ट सेट इंटरवल() और एक jquery .load() का उपयोग करता हूं। प्रत्येक बार जब यह सामग्री पुनर्प्राप्त करता है, जावास्क्रिप्ट पिछली सामग्री के साथ नई सामग्री की तुलना करता है और फिर मैं एक php स्क्रिप्ट में एक अजाक्स कॉल करता हूं जो मुझे परिवर्तनों के बारे में एक ईमेल भेजता है।स्वयं चल रहे PHP स्क्रिप्ट?

समस्या:
यह सब ठीक है और तथ्य यह है कि मैं एक ब्राउज़र लगातार खुला, अद्यतन का अनुरोध जरूरत के अलावा dandy काम कर रहे।

प्रश्न:
वहाँ 'स्वयं को क्रियान्वित' सर्वर पर स्क्रिप्ट के कुछ प्रकार के साथ यह पूरा करने के लिए एक रास्ता है? कुछ ऐसा जो मुझे केवल एक बार शुरू करना होगा, और जब तक मैं स्क्रिप्ट चलाने की इच्छा रखता हूं तब तक ब्राउज़र को खोलने की आवश्यकता के बिना इसे अपने आप चलाना जारी रहता है?

अग्रिम धन्यवाद! पीएस मैं किसी भी माध्यम से php/जावास्क्रिप्ट विशेषज्ञ नहीं हूं, लेकिन मैं अपना रास्ता चारों ओर प्राप्त कर सकता हूं।

+1

यदि आपके पास अपने होस्ट (सर्वर या वीपीएस) या क्रॉन अनुमतियों तक रूट पहुंच है, तो आप प्रत्येक एक्स मिनट को चलाने के लिए क्रॉन नौकरी का उपयोग कर सकते हैं। –

+0

बस अपने सर्वर पर क्रॉन नौकरियों का उपयोग करें .. इसे देखें>> http://www.nbill.co.uk/documentation/setting-up-a-cronjob.html – reikyoushin

+0

आप अपनी PHP स्क्रिप्ट को शुरू करने के लिए क्रॉन जॉब सेट कर सकते हैं सर्वर। – TCB13

उत्तर

1

मुझे विश्वास है कि जो चीज आप खोज रहे हैं वह एक क्रॉन नौकरी है।

+0

"जावास्क्रिप्ट पिछली सामग्री के साथ नई सामग्री की तुलना करता है और फिर मैं एक अजाक्स कॉल करता हूं ..." क्या आप विस्तार कर सकते हैं कि यह एक क्रॉन नौकरी के माध्यम से कैसे पूरा किया जाता है? –

+1

आप नहीं करते हैं। आपको सिर्फ एक PHP फ़ाइल बनाना है जो सबकुछ करता है और फिर इसे निष्पादित करने के लिए क्रॉन नौकरी सेट करता है। – TCB13

1

यदि आपकी स्क्रिप्ट उचित निष्पादन के लिए जावास्क्रिप्ट पर निर्भर करती है, तो आपको अपने लक्ष्यों को पूरा करने के लिए ब्राउज़र का उपयोग करने की आवश्यकता होगी।

हालांकि, अगर आप PHP के माध्यम से कार्यक्षमता के सभी प्रदर्शन करने के लिए, शायद cURL का उपयोग करके आवश्यक डेटा का अनुरोध करने अपनी स्क्रिप्ट को बदल सकते हैं, तो आप एक cron काम नियमित अंतराल पर स्क्रिप्ट को निष्पादित करने के लिए उपयोग कर सकते हैं।

1

यदि आप अंतराल पर एक स्क्रिप्ट चला रहे हैं, तो मैं पृष्ठभूमि में चलने के बजाए एक बैश स्क्रिप्ट का उपयोग करने की अनुशंसा करता हूं।

#!/bin/bash 

while [ 1 ] 
do 
    php "script.php" 
    sleep 300 
done 

फिर आप nohup bash.sh जैसे स्क्रिप्ट चला सकते हैं। 300 सेकंड = 5 मिनट।

संबंधित मुद्दे