Войти

Показать полную графическую версию : crontab на хостинге


Charg
21-03-2018, 13:24
Нужно такое задание в кроне (которое я без понятия что делает, но программист говорит что ему это нужно):
/usr/local/php55/bin/php -f /home/username/website/academy/index.php --task=restapi --resource='api/hrreminder' --headers='{"Accept: application/json; version=1", "Content-Type: application/json; version=1; charset=UTF-8"}'

Добавляю это задание в админке веб-хостинга:
https://i.imgur.com/xrDCsUk.png

Чуть ниже вижу такой лог:
https://i.imgur.com/olv1tQ9.png

При каждой попытке выполнения задания кронтаб шлёт письмо с такими ошибками:
sh: -c: line 0: unexpected EOF while looking for matching `''
sh: -c: line 1: syntax error: unexpected end of file
/bin/sh: application/json: No such file or directory

Программист жалуется на криво настроенный кронтаб на хостинге, который обрезает строку.
Техподдержка хостинга говорит "у нас всё норм, программист непонятно че написал".
Я склонен верить техподдержке т.к. в логе, как видно, строка "обрезается" всегда в одном и том же месте, вне зависимости от длинны (т.к. пробовал добавлять задание с относительными и абсолютными путями).
Кто-нибудь может с наскоку сказать в чем тут дело?

DJ Mogarych
21-03-2018, 16:31
Надо дать программисту телефон техподдержки хостинга.

С наскока тут ничего не скажешь, надо проверять пути, кавычки и прочее, начиная с версии php, к которой идёт обращение в скрипте.

Jula0071
21-03-2018, 16:40
Походу интерпретатор ломается на просчёте кавычек. Строка из шелла отрабатывает? Из какого? баша, наверное, а у них там в кроне более простой sh.
Тогда я бы предложил всю эту адскую строку запихнуть в шелл скрипт (с нужным интерпретатором) и из крона вызывать именно его.

Charg
21-03-2018, 16:46
А нету ssh на сервер, так что нет возможности попробовать наживую... Про скрипт думал, но надо же дать ему права +x, а снова таки как это сделать не имея ssh?

Jula0071
21-03-2018, 16:48
А нету ssh на сервер, так что нет возможности попробовать наживую... »
А в панели тоже нет доступа к шеллу? Ну попробуйте договориться с админами, чтоб они затестили.

Charg
21-03-2018, 16:49
А в панели тоже нет доступа к шеллу? »
К сожалению нет. Договорится пробовал, отказываются.

Jula0071
21-03-2018, 16:53
А какие у них в принципе шеллы доступны? Что если вызывать так:

/bin/bash -c $(/usr/local/php55/bin/php -f /home/username/website/academy/index.php --task=restapi --resource='api/hrreminder' --headers='{"Accept: application/json; version=1", "Content-Type: application/json; version=1; charset=UTF-8"}')


Видимо шаред хостинг уже вам недостаточен, пора переходить на контейнеры/вмки

Charg
22-03-2018, 10:11
Что если вызывать так: »
Видимо только sh, вот что пишет:
sh: file: No such file or directory
sh: line 1: code: No such file or directory
sh: line 2: begin_code: No such file or directory
sh: line 3: begin_code: No such file or directory
sh: line 4: addr: No such file or directory
sh: line 5: php: command not found
sh: line 6: php: command not found
sh: line 8: -a: command not found
sh: -c: line 9: syntax error near unexpected token `<'
sh: -c: line 9: ` -c <path>|<file> Look for php.ini file in this directory'

Мне, по факту, не так важно запустить чтобы оно работало (потому что я не знаю что должно произойти когда и если оно заработает), сколько выяснить на чьей стороне проблема - то ли вебхостинг кривой и его надо менять то ли наш программист пишет хрень и пусть сам разбирается.




© OSzone.net 2001-2012