Запустите скрипт php как сервис systemd в centos7

Я пытаюсь запустить phpscript при запуске centos7. В настоящее время процесс systemd выглядит следующим образом

[Unit]
Description=custom Service
After=network.target

[Service]
Type=forking
User=root
ExecStart=/usr/bin/php /var/www/htdocs/mysite/public/index.php abc xyz >> /var/log/custom.log 2>&1


[Install]
WantedBy=multi-user.target

Но приведенный выше скрипт не передает аргументы. Как я мог решить проблему? Спасибо!

3

Решение

В качестве альтернативы я создал myphp.sh скрипт bash

#!/bin/bash
nohup /usr/bin/php /var/www/htdocs/mysite/public/index.php abc xyz & >> /var/log/custom.log 2>&1

а затем в сценарии systemd

[Unit]
Description=custom Service
After=network.target

[Service]
Type=forking
User=root
ExecStart=/etc/init.d/myphp.sh

[Install]
WantedBy=multi-user.target
4

Другие решения

Попробуйте с этой конфигурацией

[Service]
Type=forking
User=root
PHP_PARAM_1=abc
PHP_PARAM_2=xyz
ExecStart=/usr/bin/php /var/www/htdocs/mysite/public/index.php $PHP_PARAM_1 $PHP_PARAM_2>> /var/log/custom.log 2>&1

ОБНОВИТЬ

[Service]
Type=forking
User=root
Environment="abc xyz"ExecStart=/usr/bin/php /var/www/htdocs/mysite/public/index.php $PHP_PARAM_1 $PHP_PARAM_2>> /var/log/custom.log 2>&1
1

По вопросам рекламы [email protected]