Pular para o conteúdo

Problemas com comando shell dentro do php [RESOLVIDO]

Responder tópico
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
  • Denunciar
  • Indicar

1. Problemas com comando shell dentro do php [RESOLVIDO]

Enviado em 07/08/2013 - 03:09h

Olá amigos bom dia,

Sou iniciante em linux e por isto vim aqui poder contar com a ajuda de vocês,

O meu problema é o seguinte:

Tenho o seguinte script em php:

<?php

$porta = $_GET['porta'];

$Command = "/home/shoutcast/./sc_serv /home/$porta/sc_serv.conf &";
$ExecCommand = $Command;
echo "Comando Executado: " . $ExecCommand ;
$Result = shell_exec($ExecCommand);
echo "<pre>$Result</pre>";

?>

Estou tentando utilizar ele pra subir o shoutcast server, o comando funciona e o shoutcast é iniciado, porém eu nao consigo ter o retorno da mensagem de que o comando foi rodado, a página fica carregando até dar tempo limite e expirar, alguém pode me ajudar ?

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

2. Re: Problemas com comando shell dentro do php [RESOLVIDO]

Enviado em 07/08/2013 - 04:56h



<?php

$porta = $_GET['porta'];
o valor da variavel porta e para pegar a ela mesmo, porem onde ela e definida?

$Command = "/home/shoutcast/./sc_serv /home/$porta/sc_serv.conf &";
Creio que o comando seria /home/shoutcast/sc_serv (acredito que aqui deveria ter algum - seguido de uma letra, por exemplo -c para config ja que voce esta carregando sc_server.conf) /home/usuario(shoultcast estou crendo que voce esta rodando o shoultcast com esse usuario)/sc_serv.conf (outro - letra como voce esta definindo a porta creio eu ser -p) $porta(que precisa ser definida) &
$ExecCommand = $Command;
uma variavel dentro de outra variavel? ha nescessidade? voce realmente precisa de duas variaveis com o mesmo valor?
echo "Comando Executado: " . $ExecCommand ;
$Result = shell_exec($ExecCommand);
echo "<pre>$Result</pre>";

?>


Geralmente nao se colocar programas executaveis na pasta /home/usuario e sim em uma das pastas que aparecem entre : neste comando no terminal
echo $PATH 


Caso o usuario nao tenha alto privilegios como administrador do sistema e aconselhavel criar a pasta /home/usuario/bin e incluir no arquivo de text .bashrc a seguinte linha:
export PATH=$PATH:/home/usuario/bin 



A variavel porta deve ser declarada na chamada do comando ou na propria declaracao dentro do script.

<?php

$porta = $_GET['8000'];

$Command = "/home/shoutcast/sc_serv -c /home/shoutcast/sc_serv.conf -p $porta &";
echo "Comando Executado: " . $Command ;
$Result = shell_exec($Command);
echo "<pre>$Result</pre>";

?>

Eu nao conheco o shoutcast porem voce deve ver no manual se o -c -p que eu acrescentei esta correto, caso voce tenha certeza que o seu script esta certo entao a unica coisa faltando e definir a vairavel porta

3. Re: Problemas com comando shell dentro do php [RESOLVIDO]

Enviado em 07/08/2013 - 05:00h

Ok, Obrigado!

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Responder tópico

Entre na sua conta para responder.

Fazer login para responder