Cronjobs в Google Sitemap для Opencart - команда Php-cli не найдена - PullRequest
0 голосов
/ 05 ноября 2019

Opencart генерирует свою карту сайта на лету, и это является проблемой в больших каталогах более 10.000 продуктов. Поэтому я изменил функцию для создания статического файла Sitemap в файле XML.

Когда я получаю доступ к своему http://localhost/index.php?route=extension/feed/google_sitemap, я генерирую файл sitemap-google.xml без проблем и с неограниченным временем выполнения. .

Я пытался добавлять его в cron на сервере разработки каждые 4 часа

0 0,4,8,12,16,20 /usr/bin/php /path/to/index.php?route=extension/feed/google_sitemap

Но я получаю "команду не найдена".

МожетЯ выполняю на «? Params / etc»?

1 Ответ

0 голосов
/ 05 ноября 2019

Вы не можете сделать это, так как параметры URL-адреса оцениваются таким образом только при вызове скрипта через сервер. Но быстрое решение может заключаться в использовании wget: хранить копию этого сценария карты сайта в любом месте под «секретным URL», вызывать его с помощью wget и помещать результат на свой диск.

Есливы не можете использовать wget, вы можете использовать скрипт PHP, содержащий file_get_contents. Таким же образом он может запросить данные через HTTP-запрос и сохранить их в кэшированном файле карты сайта.

Примечание: если вы знаете, какая логика должна присутствовать для создания этой карты сайта, вы также можете написатьВся эта логика прямо в сценарий PHP. Запуск его из оболочки помогает избежать заблокированного потока сервера, но может потребовать больше усилий

...