PDA

View Full Version : اجرا نشدن یک فایل در کرون جاب



mohammad-gh
سه شنبه 28 آذر 1396, 20:10 عصر
با سلام
فایلی دارم که با آدرس مستقیم وقتی میزنم د رآدرس بار اجرا میشود و نتیجه هم میده
اما وقتی میخوام بزارم تو کرون جاب و اتومات اجرا بشه ٬ اجرا نمی شود
https://iran-karyab.com/rss3.php
به نظر شما مشکل از کجاست !!

plague
سه شنبه 28 آذر 1396, 20:52 عصر
خب الان روش کلیک میکنیم صفحه سفید میاد شما از کجا میدونی که اجرا میشه یا نه ؟
تو صفحت یه سری خروجی بزار که مشخص کنه فایل اجرا شده یا نه
بعد تو کرون جاب ایمیلت رو بده هروقت اجرا کرد برات یه ایمیل میفرسته و میگه در چه زمانی فایل اجرا شد و چه خروجی داد
اگه اررور باشه یا درست خروجی داده باشه اونجا تو ایمیلت میتونی ببینی

mohammad-gh
سه شنبه 28 آذر 1396, 23:24 عصر
ابن فایل در حقیقیت فایل xml رو تولید میکنه
ولی تو ایمیل اینو زده
Could not open input file: /https://iran-karyab.com/rss.php

plague
چهارشنبه 29 آذر 1396, 15:21 عصر
اگه xml باشه بازم باید یه چیزی نشون بده ولی حتی سورس صفحه هم سفیده
از چه دستوری برای اجراش تو کرون جاب استفاده کردی ؟

mohammad-gh
پنج شنبه 30 آذر 1396, 15:01 عصر
/usr/local/bin/php /https://iran-karyab.com/rss.php
و
/usr/local/bin/php -q /home/....../public_html/rss.php >/dev/null

چرا وقتی مستقیم در ادرس میزنیم و اینتر میزنیم اجرا میشه ولی اینطوری نه !!

این هم قطعه اخر کد صفحه rss.php


//نوشتن اطلاعات در فایل خروجی
$file = "rss.xml";
chmod($file, 0755);
$fileHandle = fopen($file, 'w+')
or die("خطا: سطح دسترسی برای ویرایش فایل در سرور تنظیم نیست!");
$stringData = $rssfeed;
fwrite($fileHandle, $stringData);
fclose($fileHandle);

plague
پنج شنبه 30 آذر 1396, 16:53 عصر
روش ثبت کرون به این شکله که اول آدرس اجرا کننده php روی سرور رو میدی بعدبا فاصله آدرس فایلی که میخای اجرا بشه رو
این یه دستور ثابت نیست
usr/local/bin/php
ساده بگم آدرس نرام فزار php نصب شده روی سرور هستش که فایل های php باهاش اجرا میشن
حالا اگه نرم افزار تو این آدرس نصب نشده باشه و آدرس دیگه باشه طبیعتا اجرا نمیشه

از طرف دیگه شما نمیتونی آدرس وب فایل رو بدی ! باید آدرس سیستمی فایل رو بدی یعنی بجای
https://iran-karyab.com/rss.php
باید آدرس فولدر های سرور که به فایل ختم میشه رو بدی یعنی
/home/....../public_html/rss.php

شما یجا تو این آدرس دهی ها داری اشتباه میکنی (البته روشی که الان استفاده میکنی با آدرس وبی که کلا اشتباهه )

راه دیگه ای که داری استفاده از curl هستش که دیگه نخاد با آدرس ها و فولدر ها سروکله بزنی کافیه تو کرون جااب این دستور رو بزاری



curl https://iran-karyab.com/rss.php

mohammad-gh
جمعه 01 دی 1396, 08:51 صبح
ممنون از لطف تون و توضیح کاملی که دادید
درست شد