সিপানেল ব্যবহার করে ক্রোন জবটিতে পিএইচপি ফাইল চালান


102

আমি কেবল সিপ্যানেলের মধ্যে ক্রোন জব ব্যবহার করে পিএইচপি স্ক্রিপ্ট চালানোর চেষ্টা করছি - এটি কি সঠিক বাক্য গঠন?

/usr/bin/php -q /home/username/public_html/cron/cron.php >/dev/null

ক্রোন সম্পন্ন হয়েছে উল্লেখ করে আমি কোনও ইমেল বিজ্ঞপ্তি পাচ্ছি না, পিএইচপি ফাইলের সাথে আমার সুনির্দিষ্ট কিছু করার দরকার আছে কি?


25
আমি মনে করি এটি অনেক প্রাসঙ্গিক যেহেতু সিপানেল-এ অনেকগুলি প্রকল্প হোস্ট করা হয়েছে তা দেখার পক্ষে যথেষ্ট প্রাসঙ্গিক, এবং প্রয়োজনে ক্রোন জবগুলি কীভাবে চালানো যায় তা জানা দরকার
উইলিয়াম

7
যদি সার্ভার ফল্ট বা স্ট্যাক ওভারফ্লোতে সিপ্যানেল অনুমোদিত না হয় তবে এ সম্পর্কে প্রশ্নগুলি কোথায় হওয়া উচিত?
গন্ধক পাথর

8
বেশ হাস্যকর বিষয় যে এই প্রশ্নটি স্ট্যাকওভারফ্লোর জন্য 'অফ-টপিক' হিসাবে শ্রেণিবদ্ধ করা হয়েছিল তবে আমার এখানে এখনও সবচেয়ে সক্রিয় প্রশ্ন ছিল ..... আমি আশা করি এটি অন্যকে সহায়তা করেছে :)
জাবস

থানেক্স @ তাতু উলমানেন এটি আমার পক্ষে কাজ করে!
তুষার রমেশ সাইদনে

উত্তর:


66

ক্রোনট্যাব সিস্টেমে:

  • /usr/bin/phpপিএইচপি বাইনারি পাথ (কিছু সিস্টেমে যেমন: freebsd /usr/local/bin/php, লিনাক্স /usr/bin/php:)
  • /home/username/public_html/cron/cron.php আপনার পিএইচপি স্ক্রিপ্টের পথ হওয়া উচিত
  • /dev/null ক্রোন আউটপুট হওয়া উচিত, প্রাক্তন: /home/username/stdoutx.txt

সুতরাং আপনি ক্রোন আউটপুট দেখে আপনার ক্রোন নিরীক্ষণ করতে পারেন /home/username/stdoutx.txt


1
আমি এখন এটি ব্যবহার করছি এবং এটি কাজ করে তবে আমি কোনও ইমেল বিজ্ঞপ্তি পাই না কেন কোনও ধারণা নেই? php / home/username/public_html/cron/cron.php নোট আমাকে পিএইচপি স্ক্রিপ্টের শীর্ষে নীচের লাইনটি রাখতে হয়েছিল #! / usr / bin / php -q
জেবস

আপনি যদি ক্রোনজব আপনার জন্য ইমেল প্রেরণ করতে চান তবে আপনাকে পিএইচপি মেল () ব্যবহার করতে হবে, আপনি শেল স্ক্রিপ্টিং বা পিএইচপি না ব্যবহার না করে ক্রোনজবকে স্বয়ংক্রিয় মেইল ​​সিস্টেম রয়েছে বলে আমি মনে করি না।
সোমি এ

1
আমি যখন সিপ্যানেলে "ক্রোনজবস" ট্যাবে ক্লিক করি তখন পৃষ্ঠায় দুটি বাক্স রয়েছে - একটি আপনি যে আদেশটি কার্যকর করতে চান তার জন্য এবং অন্যটি আপনি যে ইমেল ঠিকানাটির জন্য আউটপুটটি প্রেরণ করতে চান সেটির জন্য। এটি
সিপ্যানেল

2
পূর্ণ কমান্ড কি হবে? আমি সমস্ত বিকল্প সহ এক লাইনে পূর্ণ কমান্ড বলতে চাইছি।
অজ

@ সোমিএ, দয়া করে আপনি আমাকে জাভা স্ক্রিপ্ট ফাইল চালানোর জন্য আদেশ বলতে পারেন।
নরেন্দ্র রেড্ডি

104

আমি এই আদেশটি এর জন্য ক্রোন জব সক্রিয় করতে ব্যবহার করেছি।

/usr/bin/php -q /home/username/public_html/yourfilename.php

গডাডি সার্ভারে এবং এটির কাজ ঠিক আছে।


2
মানে কি -q?
ভাভিক শাহ

4
@BhavikShah মতে php.net/manual/en/features.commandline.options.php , -qকোয়ায়েট মোড জন্য, শুষে HTTP শিরোলেখ আউটপুট
উইলিয়াম

@ উইলিয়াম ধন্যবাদ বুঝেছি.
ভাভিক শাহ

29

>/dev/null মেল পাঠানো থেকে ক্রোনকে থামায়।

আসলে আমার মনের phpকাছে ক্রোন থেকে কিছু আউটপুট দেওয়ার চেয়ে লগইন করার বিষয়ে যত্ন নেওয়া নিজেই স্ক্রিপ্ট তৈরি করা ভাল


আমি জিজ্ঞাসা করতে পারি যে আপনি এটি কিভাবে? ক্রোনট্যাবগুলি যাইহোক কিছুতেই আউটপুট দেয় না? আমি >/dev/null 2>&1
শেষেও করি

@ থমাসকে আপনি যদি এই জাতীয় কোনও কাজ করে থাকেন তবে /path/to/file.php > /dev/nullতা চুপ করে থাকবে।
102

19

এই সবচেয়ে সহজ উপায়:

php -f /home/your_username/public_html/script.php

এবং যদি আপনি কোনও স্ক্রিপ্ট আউটপুট লগ করতে চান তবে কমান্ডের শেষে এটি যুক্ত করুন:

>> /home/your_username/logs/someFile.txt 2>&1



11

এই ক্রোন লাইনটি সিপিএনেল ব্যবহার করে হোস্টগেটর ভিপিএসে আমার জন্য কাজ করেছিল।

/usr/bin/php -q /home/username/public_html/scriptname.php

10

CPanel- এ / usr / bin / php ব্যবহার করতে আমার সমস্যা হয়েছে কারণ এটি একটি "সিজি-এফসিগি" বাইনারি হিসাবে সংকলিত এবং "ক্লাইট" নয়। / Usr / লোকাল / বিন / পিএইচপি ব্যবহার করার চেষ্টা করুন বা এটি যেহেতু প্রথম পথে রয়েছে কেবল তার পরিবর্তে 'পিএইচপি' ব্যবহার করুন:

php /path/to/script.php

আপনি যদি এক্সিকিউটেবল হিসাবে স্ক্রিপ্টটি চালাতে চান তবে এটিটিকে + x পার্স দিন এবং স্ক্রিপ্টের প্রথম লাইন হিসাবে নিম্নলিখিতটি ব্যবহার করুন:

#!/usr/bin/env php

6

আমি আশা করি আপনার সমস্যাটিও পথ এবং পিএইচপি বাইনারি হিসাবে রয়েছে। যদি আপনি পুরানো উত্তর অনুসারে পাথটি স্থির করে থাকেন তবে ক্রোন জব চালানোর সময় দয়া করে পিএইচপি-কমান্ডের পরিবর্তে পিএইচপি-ক্লিপ ব্যবহার করুন।

এটি সম্ভবত php_sapi_name()ফিরে না হয় cli। তার ফিরে আসার অন্য কিছু মত cgi-fcgiইত্যাদি

/usr/bin/php-cli -q /home/username/public_html/cron/cron.php >/dev/null

আমি আশা করি এটি সাহায্য করবে


3

এটি দুর্দান্ত কাজ করে এবং ইমেলও প্রেরণ করে:

/ Usr / bin / পিএইচপি ইউএসআর এমএক্সআর ইউজারনেমএক্সএক্সএক্স প্রজাতন্ত্র_এইচটিএমএল এক্সএক্সআরফোল্ডারএক্সএক্সএক্সএক্সএক্সএক্সএকপিআরএফপিএইচপি

নিম্নলিখিত দুটি কমান্ডও ঠিকঠাক কাজ করে তবে ইমেল প্রেরণ করে না:

/ usr / বিন / পিএইচপি -f / হোম / উপরে হিসাবে একই

পিএইচপি-এফ / হোম / উপরে হিসাবে একই




0

ডোমেন নির্দিষ্ট মাল্টি পিএইচপি ক্রোন কাজের জন্য , এটি করুন,

/usr/local/bin/ea-php56 /home/username/domain_path/path/to/cron/script

উপরের উদাহরণে, "ea-php56" প্রতিস্থাপন করুন পিএইচপি সংস্করণ আপনি ব্যবহার করতে চান ডোমেন নিযুক্ত।

আশা করি এটি কাউকে সাহায্য করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.