miras 0 Zgłoś post Napisano Maj 5, 2012 Witam, mam następujący problem - mam vps, na nim skrypt odpalający serwer shoutcast ( teoretycznie odpalający ) załączam kod php ( bez funkcji - funkcje są na pewno dobrze napisane i wolałbym ich nie udostępniać. If ($a=='start') { ob_start(); header("Location: jakassciezka"); $sc_server = "sc_serv"; $dir="/home/8000/" $sc_serv_conf = "sc_serv.conf"; system('killall '.$sc_server); $adres=$dir.$sc_server.' '.$dir.$sc_serv_conf.' &'; system($adres); ob_end_flush(); } Gdy odpalam ten serwer przez konsolę to wszystko gra, a jak próbuję w ten sposób to nic nie gra.. PS. na serwerze mam zainstalowane php, apache2 Proszę o pomoc i dzięki z góry! Udostępnij ten post Link to postu Udostępnij na innych stronach
HaPe 242 Zgłoś post Napisano Maj 5, 2012 Z jakimi uprawnieniami pracuje webserver? Udostępnij ten post Link to postu Udostępnij na innych stronach
miras 0 Zgłoś post Napisano Maj 5, 2012 nie do końca rozumiem, o co chodzi, chmody na pliki są 777, a skrypt php jest w /var/www Udostępnij ten post Link to postu Udostępnij na innych stronach
Łukasz Ostrowski 593 Zgłoś post Napisano Maj 5, 2012 Masz włączoną funkcję system()? Udostępnij ten post Link to postu Udostępnij na innych stronach
HaPe 242 Zgłoś post Napisano Maj 5, 2012 Najlepiej pokaż swoje php.ini lub wynik phpinfo();. Udostępnij ten post Link to postu Udostępnij na innych stronach
miras 0 Zgłoś post Napisano Maj 5, 2012 (edytowany) Tutaj macie phpinfo: http://91.237.52.35/ @@ Podpowie ktoś jak włączyć tą funkcję system(); ? bo najprawdopodobniej mam wyłączoną.. Edytowano Maj 5, 2012 przez miras (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
miras 0 Zgłoś post Napisano Maj 5, 2012 Tutaj macie phpinfo: http://91.237.52.35/ @@ Podpowie ktoś jak włączyć tą funkcję system(); ? bo najprawdopodobniej mam wyłączoną.. Znalazłem, że trzeba w php.ini safe_mode_exec_dir ustawić na " /usr/local/php/bin" z tym, że u mnie jest katalog usr/local i później już nie ma php... Udostępnij ten post Link to postu Udostępnij na innych stronach
bigmen 0 Zgłoś post Napisano Maj 6, 2012 Moim zdaniem lepszym zastosowaniem w przypadku tego typu skryptów jest użycie funkcji ssh2 z PHP. Możesz utworzyć w systemie specjalnego użytkownika, ograniczyć mu prawa żeby nie dało się za jego pomocą wyrządzić większych szkód i z poziomu tego usera wykonywać komendy (przy pomocy ssh2 właśnie). Udostępnij ten post Link to postu Udostępnij na innych stronach
miras 0 Zgłoś post Napisano Maj 6, 2012 Tzn, nie wolałbym pozostać przy system(); pomoże ktoś z tą konfiguracją tego php.ini, bo to tam tkwi problem.. może ktoś ma u siebie na vpsie/dedyku takową, na której jest włączona ta funkcja? i jeszcze jedno pytanko - jak w ssh2 najpierw sprawdzam połączenie np. if (!($connection=ssh2_connect("użytkownik", 666))) { echo "<font color=red><br>[Problem polaczenia z serwerem]<br></font>"; exit(1); } else { Jak tu uruchomić ./sc_serv ? } i jak później uruchomić poprzez ssh2 ten plik ./sc_serv ? i czy w ogóle dobrze jest zrobione połączenie ssh2 ? Udostępnij ten post Link to postu Udostępnij na innych stronach