Поднять time limit в php, чтобы скрипт успевал выполниться.
Вариант - разбить задачу скрипта на части, которые бы укладывались в лимит, и вызывать их поочерёдно.
Ещё лучше вынести сложную обработку в отдельный процесс, который, например, будет находить необработанные данные в некоторой таблице и обрабатывать, а веб-интерфейс будет раз в секунду опрашивать скриптик, который просто вернёт текущий статус обработки.
В общем, есть варианты.