Мне нужно запустить скрипт PHP WebSocket, написанный на PHP 24/7/365
Путь к скрипту с именем websocket_server.php находится по указанному ниже пути.
/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/websocket_server.php
Чтобы сначала запустить приведенный выше сценарий, ему необходимо зарегистрироваться в качестве службы и автоматически вызвать эту команду. У меня не было особых знаний о настройке службы в Linux (Ubuntu 16.04). Итак, я занялся настройкой планировщика заданий Crown. Но это не дало никаких результатов из-за ошибок.
Я добавил три команды для запуска в планировщике задач, они следующие:
#P5#
#P6# #echo "Запуск сейчас" nohup php websocket_server.php > error_log & else # echo "Запуск от имени PID $PID" fi
пре>код>
#P8#
Task "/usr/bin/php /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server/websocket_server.php" completed with error in 0 seconds, output:
Could not open input file: /usr/bin/php /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server/websocket_server.php
Это из терминала PuTTY
root@h3069528:/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries# php /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server/websocket_server.php
PHP Warning: require_once(../vendor/autoload.php): failed to open stream: No such file or directory in /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server/websocket_server.php on line 10
PHP Fatal error: require_once(): Failed opening required '../vendor/autoload.php' (include_path='.:/usr/share/php') in /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server/websocket_server.php on line 10
root@h3069528:/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries# cd /var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server
root@h3069528:/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server# php websocket_server.php ^C
root@h3069528:/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server#
root@h3069528:/var/www/vhosts/abc.xy/httpdocs/proj_ci/application/libraries/server#
Помимо добавления коронных заданий, есть ли другие способы сделать это лучше? Пожалуйста, помогите мне с решением, насколько это возможно. Так как с терминала PuTTY я смог запустить команду, и все работает нормально