Суть проблемы такая:
Есть CSV файл со ссылками на страницы, которые нужно парсить, затем обработать данные в нужном формате, а потом добавить их на сайт. Сам файл загружается посредствам AJAX. Так вот весь процесс проходит как и запланировано, только прерывается на 5 минутах.
Пробовал всеми способами меня значение max_execution_time, но результат все тот же. В оф документации PHP написано, что это дефолтное значение.
Подскажите, пожалуйста, в чем может быть проблема?
P.S. Писал в поддержку, так нечем и не могут помочь, только просят доступы к проекту.
Pardon Me! Where Do I Find 4giveness?, но почему тогда процесс прерывается? Точнее сам AJAX запрос, ответ дает 500 ошибку.
Возможно алгоритм моих действий неправильный? Правильно ли то, что я начинаю процес парсинга и обработки данных непосредственно в AJAX запросе, после загрузки файла на сервер? Или мне нужно сначала сохранить файл на сервере, а уже потом начинать работать с данными?
Тут про очереди/евенты тебе написали уже...
Ну а данную задачу можно разбить например на такие составляющие:
1. "Забираем" файл;
2. Делаем "евент", что файл принят.
3. Если файл принят, то начинаем читать каждую строку со счётчиком по времени...например 30 сек...чтобы не упираться в ограничения...если при чтении очередной строки и обработке мы превышаем или равно 30 сек, то запоминаем то место в файле, где остановились и кидаем евент "продолжить" и отправляем в очередь...
4. Повторяем шаг 3 пока не дойдём до конца файла...если конец достигнут, то кидаем евент "профит";
5. Если достигнут "профит", говорим пользователю "алиЛУя!"
php не сам по себе работает, там еще есть nginx/apache в которых тоже есть максимальное время запроса.
Но в целом смысла так делать нет, лучше через очереди и т.д.