Pisze do was jako ostatnia deska ratunku..
Potrzebuje uruchomić program.
Od razu z góry zaświadczam ,że pracuje na tym samym użytkowniku w linuxie, a sposób wydawania poleceń różni się tylko tym ,że jedne to są przez putty (działające) a drugie przez php (nie działające).
Normalnie program (przez putty) uruchamiam tak:
cd /usr/hlds/hlds_hltv/hlds_l/ export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
Tutaj $ echo $LD_LIBRARY_PATH /usr/hlds/hlds_hltv/hlds_l:
Zwraca mi poprawnie.
No i samo uruchomienie programu czyli:
terminal chodzi - program też.
No i robie to z PHP
$connection = ssh2_connect(xxx, 22); $stream = ssh2_exec($connection, "cd /usr/hlds/hlds_hltv/hlds_l/"); $stream = ssh2_exec($connection, 'export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH'); $stream = ssh2_exec($connection, 'echo $LD_LIBRARY_PATH'); $errorStream = ssh2_fetch_stream($stream, SSH2_STREAM_STDERR); // Enable blocking for both streams // Whichever of the two below commands is listed first will receive its appropriate output. The second command receives nothing // Close the streams $stream = ssh2_exec($connection, 'screen -S serwer_mix -d -m ./hltv -ip xxxx -port yyy +exec hltv1_mix1.cfg +serverpassword test');
I takie błędy wyskakują :
Couldn't open config file hltv1_mix1.cfg.
Oczywiście w przypadku normalnego uruchamiania wszystko chodzi bardzo dobrze.
Pozdrawiam.
p.s Od razu powiem ,że uruchamianie programu tzn. wpisanie tego do skryptu basha i zapisanie jest nie możliwe gdyż (samo ./hltv) musze robić ręcznie gdyż ostatni parametr jest zmienny.