Continue a execução do PHP após enviar a resposta HTTP

Como posso fazer com que o PHP 5.2 (executando como apache mod_php) envie uma resposta HTTP completa para o cliente e continue executando as operações por mais um minuto?

A longa história:

Eu tenho um script PHP que precisa executar algumas solicitações longas de banco de dados e enviar email, o que leva de 45 a 60 segundos para ser executado. Esse script é chamado por um aplicativo sobre o qual eu não tenho controle. Preciso que o aplicativo relate quaisquer mensagens de erro recebidas do script PHP (principalmente erros de parâmetro inválidos).

O aplicativo tem um atraso de tempo limite inferior a 45 segundos (não sei o valor exato) e, portanto, registra todas as execuções do script PHP como um erro. Portanto, preciso que o PHP envie a resposta HTTP completa ao cliente o mais rápido possível (idealmente, assim que os parâmetros de entrada forem validados) e execute o banco de dados e o processamento de email.

Estou executando o mod_php, entãopcntl_fork não está disponível. Eu poderia contornar isso salvando os dados a serem processados no banco de dados e executar o processo real decron, mas estou procurando uma solução mais curta.

questionAnswers(12)

yourAnswerToTheQuestion