У меня есть задача - не заню как её решить
мне надо скачать сайт и после его скачивания запустить скрипт обработки результатов
Для скачивания сайта использую WGET
который запускаю через exec в фоновом режиме -b аттрибут
проблема заключается в том что не могу найти оптимальный способ определения окончания работы программы.
Пробовал делать так
создал два скрипта
один что-то типа
exec("php -f grab.php &");
второй grab.php
exec(wget) - без фонового режима
// скрипт по обработке результатов скачивания сайта
так php с & в фон не уходит да и wget не понятно что делает
кто может помочь решить задачу?
Спустя 16 минут, 39 секунд (19.02.2009 - 21:12) sergeiss написал(а):
А зачем в фоновом режиме? Запусти его, т.е. скрипт скачки, в обычном режиме. Установи разрешение на бесконечное время работы (чтобы никакой тайм-аут тебя не прервал).
По окончании работы первого скрипта, в самом его конце, установи вызов второго скрипта.
Вот кусок из моего скрипта, который как раз эту задачу и решает:
По окончании работы первого скрипта, в самом его конце, установи вызов второго скрипта.
Вот кусок из моего скрипта, который как раз эту задачу и решает:
PHP |
echo "Дальнейшая загрузка данных: : <script language=\"JavaScript\"> location.href=\"load_config_part.php?". |
Этот скрипт требует, чтобы был разрешен JavaScript. Но так как ты для себя это запускаешь, то можешь гарантировать, что он будет разрешен.
Это кусок из скрипта с именем load_config_part.php

Подобный вызов повторяется несколько раз, каждый раз параметры новые.
Спустя 7 минут, 11 секунд (19.02.2009 - 21:19) kirik написал(а):
Андрей, правда в твоем случае не совсем понятно зачем нужна фоновая работа. Не вижу смысле использовать фон для запуска .php файлов.
Я фон использую для того чтобы забэкапить сайт. Есть bash скрипт бэкапа сайта+БД, и его я запускаю в фоне таким образом.
Я фон использую для того чтобы забэкапить сайт. Есть bash скрипт бэкапа сайта+БД, и его я запускаю в фоне таким образом.
Код |
sh script.sh > /dev/null & echo $! |
Спустя 7 дней, 2 часа, 18 минут, 3 секунды (26.02.2009 - 23:37) Андрей написал(а):
домен вводит пользователь нга сайте
и сразу после того как он закомитит ссылку, мне надо начать скачивать сайт и после его скачивания запустить обработку результата
т.е. обработку post запроса веду в php там же хочу и вызвать грабер и по окончании обработать результат
всё это естественно в пользовательском интрефейсе
как он закомитил ссылку я присваиваю статус- идёт обработка результата, после того как скачал сайт и обработал результат - вывожу соответственно результат
т.е. я не могу убрать огртаничение выполнения скрипта так как надо вывести интерфейс с надписью идёт обработка и пользователь на время может уйти на другую страницу,
поэтому и думал иил в фон выполнение закинуть или дочерний процесс создать
и сразу после того как он закомитит ссылку, мне надо начать скачивать сайт и после его скачивания запустить обработку результата
т.е. обработку post запроса веду в php там же хочу и вызвать грабер и по окончании обработать результат
всё это естественно в пользовательском интрефейсе
как он закомитил ссылку я присваиваю статус- идёт обработка результата, после того как скачал сайт и обработал результат - вывожу соответственно результат
т.е. я не могу убрать огртаничение выполнения скрипта так как надо вывести интерфейс с надписью идёт обработка и пользователь на время может уйти на другую страницу,
поэтому и думал иил в фон выполнение закинуть или дочерний процесс создать