Ubuntu 18.04 Почему при вызове моего питоновского скрипта-демона из PHP страница бесконечно грузится? Вывод вроде как направляю в файл и использую nohup (как указанно в документации). P.S. Хочу сделать кнопку на сайте, при нажатии на которую скрипт будет вкл. и работать.
Мой php код:
<?php
$result = system('nohup python3 /home/scripts/script1.py & > output.txt', $retval);
echo $retval;
?>
Питон скрипт представляет из себя вечный цикл и записью данных в бд.
Команда &
фонового запуска процесса указана в неверной позиции. И еще полезно отсоединить stdin.
Важно не указывать второй аргумент, если не хотите дожидаться завершения процесса!
<?php
system('nohup python3 /home/scripts/script1.py </dev/null &>output.txt &');
?>
Если всё-таки важно убедиться, что Python скрипт запущен корректно, то напишите запускающий скрипт.
#!/usr/bin/env python
import sys
import time
from subprocess import Popen
DETACHED_PROCESS = 0x00000000
CREATE_NEW_PROCESS_GROUP = 0x00000200
BELOW_NORMAL_PRIORITY_CLASS = 0x00004000
proc = Popen(
[sys.executable, '/home/scripts/script1.py', 'argument1', 'argument2'],
creationflags= DETACHED_PROCESS | CREATE_NEW_PROCESS_GROUP | BELOW_NORMAL_PRIORITY_CLASS,
close_fds = True
)
# Wait a bit in case process failed to start
time.sleep(2)
if proc.poll() is not None and proc.poll() > 0:
raise RuntimeError('Cannot start process')
<?php
$result = system('python3 /home/scripts/start.py 2>&1', $retval);
echo $retval;
?>
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Нужно оправить изображение и текст пост запросом, на просторах интернета нашёл библиотеку https://githubcom/kevinsawicki/http-request судя по приведённому примеру...
Ищу любой проект по vue js есть опыт в написание на vue js модулей статистики готов работать за спасибо если у вас интересная идея причина довольно...
Я новичок и я делаю проект с тестированием и столкнулся с такой ошибкой