رفتن به مطلب

آموزش cron در هاست


ارسال‌های توصیه شده

در 10 ساعت قبل، وحید نامنی گفته است :

وقتی گزینه cron رو انتخاب می کنید مسیر کامل رو خود IPS به شما نمایش میده!

سلام

خدا قوت

این ادرس رو قرار دادم ولی بعد 48 ساعت در مرکز مدیریت اخطار داد که کرون درست کار نمیکنه

public_html/applications/core/interface/task/task.php

ولی با این ادرس مشکلی نداره و خطایی نمیده

public_html/corn.php

البته اولش home/yourname/ هم قرار میدم

ولی الان مشکل اینجاست که پردازش های پس زمینه 40 به بالا هستش همیشه و کمتر یا صفر نمیشه! قبلا صفر میشد!!

با تشکر یاحق

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز آدرسی که بهتون تو پنل IPS داده اون رو تو قسمت Command کرون وارد کنید. این همه توضیح میدیم شما باز برمیگردید سر خونه اول.

ببینید طبق عکس زیر

photo_2020-11-08_00-22-53.thumb.jpg.8b6b4f73ae5229df5d858b291f8800da.jpg

دوم اینکه عرض کردم باید اسکریپت نویسی بلد باشید برای اجرا و کار با کرون. همچنین باید  زبون php بلد باشید و براش دستور بنویسید. همینطوری که نمیشه خطا میده
من نمونه دستوراتشو براتون مینویسم ولی شما باید طبق باب میلتون دستورات رو بهش اضافه کنید.

هر کودوم از ستون ها به ترتیب نشان دهنده :

  1. Minutes : دقیقه 0-59
  2. Hours : ساعت 0-23
  3. Days : روز 1-32
  4. Months : ماه 1-12
  5. Days of the Week : روزهای هفته 0-6

برای مثال, اگه می میخوای زمان بندی رو برای  12 قبل از ظهر اولین روز هر ماه قرار بدیی چیزی مثل دستور زیر رو داری :

0 0 1 * * home/path/to/command/the_command.sh

اوپراتون های دیگه وجود داره که میتونی تو زمان بندی ازشون استفاده کنی :

  1. کاما ( , ) برای ساخت لیستی از مقدارهایی از هر ستون کرون
  2. خط تیره ( – ) برای مشخص کردن محدوده مقدارها
  3. ستاره ها ( * ) برای مشخص کردن مقدار همه

ما چهارتا property زیرو ابتدا براتون تعریف میکنم

  1. $connection : ارتباط دیتابیس ما
  2. $path : مسیر فایل
  3. $handle : نام فایل کرون موقت ما
  4. $cron_file : مسیر کامل فایل و نام فایل کرون

کلاس ما باید قابلیت اتصال و احراز هویت به منظور اجرای دستورات و داشتن دسترسی به cronTab کاربر رو داشته باشه. بنابراین ما یه کانکشن SSH2 رو احراز هویت می کنیم.

برای اجرای دستور نیازه که از متد exec() استفاده کنیم.

پس, نیاز به این هستش که بتونیم تو فایل cronTab رایت کنیم. همچنین به راهی نیاز داریم که بتونیم بعد از تموم شدن کار این فایل رو حذف کنیم. برای اینکار متد write_to_file() و remove_file() رو تعریف می کنیم. ( که برای شما خیلی مهمه این دو دستور )

البته به راهی نیاز داریم که بتونیم cron job ها رو بسازیمو پاک کنیم. برای همین به ترتیب متدهای append_cronjob() و remove_cornjob() رو ایجاد می کنیم.

برای اینکه بتونیم کل cronTab ها رو حذف کنیم نیاز داریم از متد remove_crontab() برای مدیریت این عملیات بهره ببریم.

در آخر, نیاز به دو متد کمکی (helper method) داریم. اولین متد, که مقدار بولین (boolean) رو برگشت میده, بطور ساده وجود فایل موقت cron رو بررسی می کنه, متد بعدی, برای نمایش ارور های پیش امده استفاده میشه. نام متدها به ترتیب crontab_file_exists() و error_message() هستن.

کلاس کلی برای کار ما برای Cron Job تو PHP این شکلی هستش:

<?php
 
Class Ssh2_crontab_manager {
 
    private $connection;
    private $path;
    private $handle;
    private $cron_file;
 
    function __construct() {...}
 
    public function exec() {...}
 
    public function write_to_file() {...}
 
    public function remove_file() {...}
 
    public function append_cronjob() {...}
 
    public function remove_cronjob() {...}
 
    public function remove_crontab() {...}
 
    private function crontab_file_exists() {...}
 
    private function error_message() {...}
 
}

اگه Php تون در حدیه که میتونید Command بنویسید. فایل زیرو دانلود کنید و یه نگا بهش بندازید. 

cron.php

تاکید میکنم که محتویات این فایل برای php شما نیست . صرفا برای آشنایی با دستورات کرون هستش.

موفق باشید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

ممنون از توضیحات عالی و زیباتون

الان می خوام هر دقیقه اجرا بکنه و تو سی پنل هم هر دقیقه رو انتخاب کردم

اون کادری که قرمز کشیدید کل ادرسو از ابتدا تا انتها باید کپی بکنم در command بعدش دیگه تمومه؟

photo_2020-11-08_00-22-53.jpg

با تشکر یاحق

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • بنیان گذار IPSFarsi

با توجه به اینکه ۲ صفحه توضیح داده شد برای یک خط کد بزارید من راحت تون کنم. @ircfc

زمانی که دارید توی cPanel جاب رو اضافه می کنید تمام گزیه های زمانی رو * بزنید و در قسمت command همون خط کدی رو که نمایش داده میشه در پنل IPS بزنید.

مساله نهایی اینکه از امتحان کردن نترسید.بزنید سایت تون منفجر که نمی شه، هر روشی که خودتون می دونید رو تست کنید. هر چند که کلا از اول گفته شد اون چیزی که ips نمایش میده رو با * بزنید که شما کلا با ۲ صفحه توضیح باز مرحمت کردید  و همه رو نادیده گرفتید. یک بار از اول تا آخر با این همه توضیحات بخونید و می گم روش های مختلف  رو تست کنید. بعدش نشد بیاید اینجا توضیح بیشتر بخواید این نباشه با خیال راحت روی اعصاب برید.

اگر مشکلی دارید از اینجا به بعد از هاستینگ تون بپرسید به اندازه کافی توضیح داده شده.

قفل

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...