COVID2019 и это вот все. Друзья, вся эта история начинает плохо пахнет. Мойте руки, не ходите в люди. Отложите все плановые покупки и положите в носок заначку. Заприте ваших родителей, бабушек-дедушек на даче. Лучше перебдеть чем недобдеть. Берегите себя!

Настройка Cron на ukraine.com.ua


sadko

Recommended Posts

Уважаемые, Знатоки!

 

Подскажите, пожалуйста, как настроить Cron на ukraine.com.ua.

 

У меня установлен модуль YML импорт экспорт Яндекс Маркет для OpenCart 2. Для того чтобы Cron генерировал xml-файлы нужно исполнять команды вида:
 

http://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

Цифры в конце - уникальный секретный код, чтоб враги не могли вызвать генерацию файла. В результате исполнения - файл prom_ua.xml.

 

Если команду вставлять адресную строку браузера - все работает. А с Cron есть варианты:

 

1. Если по умолчанию вставлять - добавляется команда: -c /home/mysite/.system/php/www.mysite.com.ua.ini

 

/usr/local/php56/bin/php -c /home/mysite/.system/php/www.mysite.com.ua.ini -f https://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

 

2. можно выкинуть -c /home/mysite/.system/php/www.mysite.com.ua.ini:

/usr/local/php56/bin/php -f https://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565


3. Можно через относительный адрес:

 

 /usr/local/php56/bin/php -c /home/mysite/.system/php/www.mysite.com.ua.ini -f /home/mysite/mysite.com.ua/www/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565 

4. можно выкинуть -c /home/mysite/.system/php/www.mysite.com.ua.ini:

 

/usr/local/php56/bin/php -f /home/mysite/mysite.com.ua/www/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

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

Файлы складываются в корне сайта.

 

Подскажите, что я делаю не так.

 

Спасибо!

Ссылка на комментарий
Поделиться на других сайтах

@sadko Приветствую!
Для http однозначно нужно указывать относительный путь

/home/mysite/mysite.com.ua/www/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

А вот как для https - я не пробовал. Может быть некорректно настроена переадресация с http на https?
Выкидывать -c /home/mysite/.system/php/www.mysite.com.ua.ini не нужно, хотя вроде бы должно автоматом выбрать интерпретатор.
Ссылка вроде бы правильная, смущает только /home/mysite/mysite.com.ua, проверьте чтобы было /home/mylogin/mysite.com.ua
Посмотрите, не превышает ли время выполнения лимит скрипта, в настройках max_execution_time, обычно 30сек.
Может не хватает памяти, если товаров много. Хотя вы говорите, что руками всё работает.
Посмотрите лог, нет ли ошибок при записи файла, все ли права выставлены.

Я тоже стал обладателем этого счастья пару часов назад. Тоже для прома. Пока жду активацию.
 

Ссылка на комментарий
Поделиться на других сайтах

Друзья, Товарищи!

 

А что за тема: Запуск cron через wget?

 

https://www.ukraine.com.ua/faq/kak-zapustit-cron-cherez-wget-.html#!8

 

Это правильно? Чето я запутался. Если есть wget зачем тогда?

PHP 5.6	- /usr/local/php56/bin/php -f < путь к файлу >

 

Ссылка на комментарий
Поделиться на других сайтах

А что вот это за штука:

 

/usr/local/zend-5.4/bin/php-cli

вместо:

 

/usr/local/php56/bin/php

имеется ввиду что за php-cli?

 

Может написать в команде:

 

/usr/local/php56/bin/php-cli -f /home/mylogin/mysite.com.ua/www/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

 

В 2/2/2017 at 01:54, satyr сказал:

смущает только /home/mysite/mysite.com.ua, проверьте чтобы было /home/mylogin/mysite.com.ua
 

 

Вы совершенно правы - это я тут написал неправильно.

Ссылка на комментарий
Поделиться на других сайтах

3 часа назад, nikifalex сказал:

разве ж

php /home/mysite/mysite.com.ua/www/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565

 

будет работать? это же get запрос. и php такое не поймет.

 

Похоже - вы правы!!! Спасибо большое!!!

 

Я как человек далекий канешна этого не знал.  Только методом тыка вчера удалось запустить вот так:

 

/usr/bin/wget -O - -q -t 1 'https://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565'

А вот так, по непонятным для меня причинам, почему-то - не работает:

 

/usr/bin/wget -t 1 -O - 'https://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565'

Хотя такие команды прописанные для модуля Новая Почта API - работают! Ну во всяком случае - модуль пишет что базы НП обновлены.

 

А как определить, что это - get запрос? Потому - что нет указания на конкретный файл php?

Странно, что Вы это сразу заметили, а техподдержка модуля ничего такого не сказала... Я ж им и свои команды присылал...

12 часа назад, Yoda сказал:

Если что, у Ukraine есть техподдержка, их можно насиловать в хвост и в гриву, они тупые овцы в большинстве своем, но с десятого раза решают.

 

Техподдержка на юкрейн - с чувством юмора:

 

https://www.ukraine.com.ua/faq/kak-zapustit-cron-cherez-wget-.html#!8

 

Первые 4 комментария - разворот на 180 градусов, потом еще один на 180 - к тому что было сначала :)

Ссылка на комментарий
Поделиться на других сайтах

почитайте тут http://www.opennet.ru/man.shtml?topic=wget

в get передаются параметры. параметры после "?"

и да, если не хотите вообще заморачиваться, запускайте через wget. 99% что все будет работать как надо и проверить легко.

А 1% это нюансы.

Ссылка на комментарий
Поделиться на других сайтах

2 часа назад, Yoda сказал:

Как правило в крон пускаются процессы, которым не хватает время выполнения от front-end юзера.

 

...либо то, что должно запускаться автоматически. И кстати set_time_limit

Ссылка на комментарий
Поделиться на других сайтах

Запутали вы меня товарищи знатоки!

 

Вот это запустит никак кроме wget не удалось:

 

/usr/bin/wget -O - -q -t 1 'https://www.mysite.com.ua/index.php?route=feed/ocext_feed_generator_yamarket&token=prom_ua656565'

Тут что - могут быть другие варианты? Как правильно то?

 

Для модуля Топоркова сейчас так:

 

/usr/local/php56/bin/php -c /home/mylogin/.system/php/www.mysite.com.ua.ini -f /home/mylogin/mysite.com.ua/www/export/yandex_yml.php 

Но пока чето не заработало - может права на папку экспорт поменять надо.

 

В модуле Новая Почта API - тоже через wget с НП склады  обновляются и проч.

Ссылка на комментарий
Поделиться на других сайтах

  • 1 month later...
В 28.02.2017 at 22:16, Yoda сказал:

Попробуйте на ukraine сделать ssh доступ.

И запустить команду из консоли - посыпаятся ошибки - будет ясно.

Но как то слишком замороченно у вас все.

 

С модулем Топоркова так заработало - может кому пригодится:

 

/usr/bin/wget -O /home/mylogin/mysite.com.ua/www/export/yandex_yml.xml 'https://www.mysite.com.ua/index.php?route=feed/yandex_yml&token=555'

 

Ссылка на комментарий
Поделиться на других сайтах

21 час назад, RHCk сказал:

Токен свой спрячьте, а то с модулем Топоркова магазин ваш будет уверенно лежать.

555? Это отвлеченные цифры. Адрес сайта тоже обезличил вроде. Что именно еще спрятать?

 

Посоветуете модуль лучше модуля Топоркова? Пользую еще  YML импорт экспорт Яндекс Маркет для OpenCart 2 от Ocext - но там свои нюансы.

Ссылка на комментарий
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.