0

Disparando Processos em background

criado por Greg Brown em 31/08/2005 11:17pm
OK, agora que temos toda a teoria por tras disso, aqui vao algumas dicas para voce poder fazer isso de forma segura e eficiente.

DISPARANDO O SCRIPT
Resista a tentacao de utilizar o "system" ou "exec" do PHP para isso.
E preferivel colocar o Shell na pasta CGI do seu servidor para que ele possa ser chamado via HTTP pelo PHP.

Por exemplo, crie um arqiuvo chamado, config.sh.cfg
que contem:

zipFile=/tmp/meuZip.zip
tmpFolder=/tmp/dados

Assim no seu shell, vc pode usar essas variaveis zipFile e tmpFolder sem problemas usando o comando "source /pathdoarquivo/config.sh.cfg"

Prefira salvar os dados necessarios para o script em uma pasta sem leitura do usuario web, assim, vc evita possiveis brechas de seguranca.

Use os comandos de unzip disponiveis no seu servidor para extrair o ZIP dentro da pasta tmpFolder.
Rode o Perl e de a mensagem de Proesso Iniciado para o usuario.

Vale a pena lembrar que para executar o Perl, vc deve chama-lo com a seguinte linha de commando:

/pastaSegura/arquivo.pl > /dev/null 2>&1 &

Isso garante que o Shell nao fique esperando o Perl terminar para dar a resposta de OK pro usuario.

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)