Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 16.09.2011, 18:03   #1
Специалист
 
Регистрация: 15.07.2008
Сообщений: 375
Вес репутации: 203
Deicider - как роза среди колючекDeicider - как роза среди колючекDeicider - как роза среди колючек
По умолчанию Запустить долгоиграющий процесс из php скрипта

Коллеги!

Возникла потребность запускать стороннюю программу из php-скрипта. Причем не нужно ждать результата выполнения. Требуется, чтобы скрипт запустил программу, а сам завершился. Возможно ли такое?

Я смог придумать только очень геморройный вариант - добавлять в кронтаб строку на запуск программы в следующую минуту, а также строку на то, чтобы эту запись через пару минут из кронтаба убрать

Во-первых, это через жопу, а во-вторых небезопасно давать пыхпыху права на управление кроном.
Deicider вне форума   Ответить с цитированием
Старый 16.09.2011, 18:42   #2
Мастер
 
Аватар для Igor V
 
Регистрация: 13.05.2010
Адрес: Nsk
Сообщений: 776
Вес репутации: 187
Igor V скоро станет известен
По умолчанию

удолил не тот скрипт

Последний раз редактировалось Igor V; 16.09.2011 в 18:51.
Igor V вне форума   Ответить с цитированием
Старый 16.09.2011, 21:33   #3
Специалист
 
Аватар для maksim7
 
Регистрация: 05.05.2008
Адрес: Город Герой О_o
Сообщений: 354
Вес репутации: 218
maksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущееmaksim7 - прекрасное будущее
По умолчанию

Не совсем понятно в чём проблема, как вариант:

PHP код:
set_time_limit(5);
// тут запуск приложения 
и через 5сек. скрипт умрёт недождавшись ответа. )))
__________________
ч/б подпись: I work for money, if you want loyalty get a dog.
Я покупаю контент здесь и здесь
maksim7 вне форума   Ответить с цитированием
Старый 16.09.2011, 21:40   #4
Эксперт
 
Аватар для seocore
 
Регистрация: 18.06.2007
Адрес: Картофель
Сообщений: 2,417
Вес репутации: 357
seocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущееseocore - прекрасное будущее
По умолчанию

Цитата:
Сообщение от Deicider Посмотреть сообщение
Я смог придумать только очень геморройный вариант
лимит времени можно увеличить через set_time_limit() либо через правку параметров - ini_set()...

а вообще стоит создать шел-скрипт (по аналогии с Perl) и выполнять непосредственно в консоли, причем, лучше всего из под screen'а (есть такое приложение)
seocore вне форума   Ответить с цитированием
Старый 17.09.2011, 00:19   #5
Эксперт
 
Регистрация: 05.03.2008
Сообщений: 1,095
Вес репутации: 250
boric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущееboric - прекрасное будущее
По умолчанию

Deicider, Если хочется сделать безопасно, то лучше не запускать прогу вообще из пхп-скрипта. Пусть лучше пхп-скрипт пишет какой-нибудь признак в файл или БД, а например башевский или питоновский скрипт с необходимыми правами будет по крону (например раз в минуту) проверять наличие этого признака и запускать нужную программу. Также можно использовать например простейший сервер на питоне, который будет слушать некий сокет и запускать прогу, когда на сокет придет команда, которую будет посылать пхп-скрипт. Это вообще было бы универсальное решение. На каждую команду могла бы запускаться своя программа. Да и вообще такой запускающий сервер может находиться на другом компе.
boric вне форума   Ответить с цитированием
Старый 21.09.2011, 10:25   #6
Специалист
 
Регистрация: 15.07.2008
Сообщений: 375
Вес репутации: 203
Deicider - как роза среди колючекDeicider - как роза среди колючекDeicider - как роза среди колючек
По умолчанию

Всем спасибо за советы. Всё это в общем-то понятно. Я думал, может быть есть способ сделать это непосредственно из php-скрипта.
Deicider вне форума   Ответить с цитированием
Старый 21.09.2011, 18:30   #7
Новичок
 
Регистрация: 25.08.2011
Сообщений: 11
Вес репутации: 0
bdmalex на пути к лучшему
По умолчанию

Обычное выполнение системной команды в фоновом режиме, чем не устраивает ?
bdmalex вне форума   Ответить с цитированием
Старый 21.09.2011, 20:05   #8
Печник
 
Аватар для ubuntu
 
Регистрация: 11.10.2009
Адрес: Наш мир
Сообщений: 2,060
Вес репутации: 234
ubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордитсяubuntu - за этого человека можно гордится
По умолчанию

А чем вас exec неустроил?
http://www.php.net/manual/en/function.exec.php
__________________
Сайты на Друпале, я держу здесь.
ubuntu вне форума   Ответить с цитированием
Старый 25.09.2011, 14:31   #9
Специалист
 
Регистрация: 13.06.2010
Сообщений: 103
Вес репутации: 173
Horrower скоро станет известен
По умолчанию

ubuntu, если использовать просто exec, то php будет дожидаться ответа.
надо запускать в бэкграунде

function ExecBkg($sCmd) {
exec($sCmd . " > /dev/null &");
}
Horrower вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Процесс Winka Последний Герой Курилка 87 15.03.2010 15:16
Идет процесс регистрации mbmarket Разработка и сопровождение сайтов 3 03.06.2009 11:15
Что за процесс такой? WinMgmt.exe Deadman_n Курилка 18 17.03.2009 21:30
Закончился ли процесс обновления ТИЦ Lesnik59 Вопросы по работе системы 40 26.07.2007 23:45
Процесс изменения цен и оплата ara Вопросы по работе системы 6 24.05.2007 12:09


Часовой пояс GMT +3, время: 07:04.