Panel administracyjny & linux

Witam!

Odpaliłem na serverze aplikacje “sc_trans” (autopilot do shoutcast).

Znalazłem prosty panel administracyjny włączający i wyłączający aplikacje:

<? 

$config['namefile'] = 'sc_trans'; 

$config['aplikacja'] = '/root/pilot/'.$config['namefile']; 

$config['konfig'] = '/root/pilot/sc_trans.conf'; 


$restart = false; 

if($_GET[restart]=="tak") $restart = true; 


if(($_GET[start]=="tak") or ($_GET[stop]=="tak") or ($restart)){ 

   if (($_GET[start]=="tak") or ($restart)) @exec("".$config['aplikacja']." ".$config['konfig']." >/dev/null &"); 

   if (($_GET[stop]=="tak") or ($restart)) @exec("killall -9 ".$config['namefile'].""); 


    header("Location: ".$_SERVER['HTTP_REFERER']); 

    echo 'Powrót'; 

    exit; 

 }

?> 

[/code]

Wrzuciłem ten skrypt do index.php później na FTP i po odpaleniu stronki nic się nie wyświetla…

I moje pytanie jak to skonfigurować i jak odpalić.

Pozdrawiam i proszę o pomoc

Skrypt powinien być odpalany lokalnie.

Skrypt powinien być odpalany lokalnie czyli?

Przepraszam ale w tych sprawach jestem zielony.

Przepraszam, moja pomyłka.

Usuń znak „@” sprzed „exec” i pokaż, co wyrzuca.

Pusta strona, żadnej reakcji.

Co powinienem jeszcze edytować oprócz ścieżki do sc_trans?

Każde polecenie robimy wg schematu:

... 

exec('polecenie',$wyjscie, $blad);

echo "

".print_r($wyjscie,true)."

"; echo “#”.(int)$blad; … [/code]

I masz info co wyrzuca dane polecenie na wyjście oraz jaki to nr błedu.

Polecenie z “kill” myślę że może nie być obsługiwane.

No tak ale gdzie mam wpisać dane do połączenia z serverem?

Bo jeżeli wstawię skrypt na jakiś hosting to jak on połączy się z VPS?

z tego co widzę to konfiguracja jest tu “/root/pilot/sc_trans.conf” a plik wykonywalny tu “/root/pilot/sc_trans”. Wszystko jest zapisane w zmiennej $config.

I do tego co napisałem to moze jeszcze mała korekta:

ob_start();


if (($_GET[start]=="tak") or ($restart)) exec("".$config['aplikacja']." ".$config['konfig']." &", $wyjscie, $blad);


echo "

".print_r($wyjscie,true)."

"; echo “#”.(int)$blad; mail(‘twoj@email.pl’, ‘test www’, ob_get_contents()); [/code] … i na powinieneś dostać maila Lub 2 sposób:

[code] if (($_GET[start]==“tak”) or ($restart)) exec("".$config[‘aplikacja’]." “.$config[‘konfig’].” >> /jakis/katalog/plik.log &");

i w odpowiednim pliku masz wyjście z polecenia.

Jak przeanalizujesz to co się dzieje po wykonaniu poleceń, czyli co jest w plikach lub na mailu, to daj znać.

Przepraszam ale teraz to już się w ogóle pogubiłem…

Mam na pewnym hostingu oddzieloną maszynę (VPS) a na niej Linuxa.

I teraz chce za pomocą strony WWW (na innym hostingu) odpalić aplikacje

która znajduje się: /root/pilot/sc_trans.

Da się to jakoś wykonać?

Najlepiej to jednak stwórz osobny plik PHP i wrzuć na katalog główny domeny

<?php

ini_set('display_errors','on');

ini_set('error_reporting',E_ALL);


exec('/root/pilot/sc_trans /root/pilot/sc_trans.conf &',$wyjscie, $blad);

echo "

".print_r($wyjscie,true)."

"; echo “#”.(int)$blad; ?> [/code] I teraz odpal w przeglądarce poprzez “domena.com/nazwategoskryptu.php” Potem zmień “/root/pilot/sc_trans /root/pilot/sc_trans.conf &” na “/root/pilot/sc_trans /root/pilot/sc_trans.conf” i sprawdź ponownie. I na końcu jeszcze raz zamień to co wyżej na “/root/pilot/sc_trans /root/pilot/sc_trans.conf >/dev/null &”. Wyniki dawaj na forum oczywiście. U mnie np. to wyżej daje wyjście

[code] Array ( ) #126

czyli z manuala czytając to oznacz że

Przy okazji to jest manual pt. sprawdzanie czy w PHP da się uruchomić dane polecenie. Prościej się nie da.