2010-11-11 21 views
7

शायद एक मूर्ख सवाल है, लेकिन मैं काम करने के लिए एक cronjob पाने की कोशिश कर रहा हूँ। हालांकि यह सर्वरफॉल्ट के लिए एक सवाल हो सकता है, मुझे लगता है कि यह एक एसओ-सवाल भी है।मेरा cronjob काम नहीं कर रहा है?

वैसे भी: मैंने प्रत्येक घंटे, दिन (संख्या), दिन (नाम) और महीने के 1 मिनट के निष्पादन के लिए एक क्रोनबॉज स्थापित किया है। दिए गए आदेश है: /home/easybr01/domains/easybranding.nl/public_html/cronjobs/test.php

कौन करता है, तो यह काम करता है एक simpe php समारोह mail(to, subj, content, hdrs) के साथ एक फ़ाइल से ज्यादा कुछ नहीं परीक्षण करने के लिए है ... लेकिन मेल कभी नहीं आते .. और वे एक स्पैम फ़ोल्डर ईटर में नहीं हैं ..

क्या कोई जानता है कि क्या गलत है ?? मुझे लगा कि यह बहुत सीधे आगे होना चाहिए ...

+0

पहले मूल डिबगिंग। क्या क्रॉन नौकरी बिल्कुल निष्पादित है? (उदाहरण के लिए वर्तमान समय को एक अस्थायी फ़ाइल में लिखने का प्रयास करें) –

उत्तर

5

आप $ {PATH_TO_PHP} cronjob में, यह इंगित करना चाहिए जैसे: - (। पूर्व आधुनिक 744)

* * * * * ${PATH_TO_PHP} /home/easybr01/domains/easybranding.nl/public_html/cronjobs/test.php 

वैकल्पिक रूप से, आप स्क्रिप्ट निष्पादन योग्य बना सकते हैं, और की पहली पंक्ति में #!${PATH_TO_PHP} जगह अपने PHP स्क्रिप्ट, जैसे: -

#!${PATH_TO_PHP} 
<?php 
// remanding code 
?> 
+0

मैंने chmod बदल दिया है और PHP को पथ जोड़ा है, प्रभाव देखने के लिए अब एक मिनट प्रतीक्षा कर रहा है। – Ben

+0

धन्यवाद, अब यह काम करता है! और कई बार मैंने एक और चीज को महसूस किया जो मैंने गलत किया .. मैंने मिनट के बजाय * के बजाय 1 डाल दिया ... जिसका स्पष्ट अर्थ यह है कि इसे केवल एक घंटे के हर मिनट में नौकरी निष्पादित करनी चाहिए। आपका बहुत बहुत धन्यवाद! – Ben

4

स्टार्टर्स के लिए, आपको PHP कमांड-लाइन दुभाषिया चलाने की आवश्यकता है, न केवल एक PHP फ़ाइल को इंगित करें। यदि आप क्रॉन को कमांड दे रहे हैं, तो उसे पूरे कमांड की आवश्यकता है।

+0

ठीक है .. मुझे यह नहीं पता था, जाहिर है ..;) धन्यवाद। – Ben

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