toque popen entre conexões persistentes

Estou tentando executar um comando usando o popen e depois imprimir o progresso via AJAX. Eu achei este post extremamente útil e consegui o AJAX para o script Exchange funcionando bem. O problema é que toda vez que há um GET asynchronous para test ajax, o controle no popen é repetido. Se eu tiver o shell executado apenas uma vez, o identificador não é mais válido. Não consigo descobrir como fazer $ handle ser persistente em todos os pedidos.

 public function test() { chdir('my dir'); $handle = popen('make install 2>&1','r'); echo fread($handle, 2096); } 

Só haverá um usuário solicitando isso de cada vez … usado apenas no back-end do Admin. A saída do AJAX é sempre “Fazendo a instalação no src”.

    Você não pode fazer isso. Você terá que executar o processo ‘make install’ em segundo plano (por exemplo, via exec() ) e redirect a saída para um arquivo / pipe que você pode ler ao executar os pedidos do AJAX.