![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 19 Dołączył: 13.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Piszę pomocny panel do dodawania uzytkowników do sieci(udostępnianie internetu). Głównie skrypt ładuje z bazy danych dane (formułki iptables itd) do plików mac, htb, htb_dzien, htb_noc... I teraz mój problem. Po zapisaniu tych plików na serwerze, trzeba je przeładować(odpalić), z konsoli robi sie to bardzo prosto, wpisujemy "./mac"(jeśli jestesmy w katalogu /etc/init.d) i tak z każdym plikiem. I wszystko działa, ale chciałem żeby ten pliki automatycznie się "przeładowywały" ze skryptu php. Do tego użyłem funkcje exec: Kod exec('../../../etc/init.d/mac'); i tak z kolejnymi plikami pokoleji. Niestety nie wykonuje mi tego pliku. to napisałem mały prosty skrypt pod basha, żeby sprawdzić czy funkcja exec działa na serwerze: Kod #!/bin/sh cd /etc/init.d;./mac cd /etc/init.d;./htb_dzien echo 'lol'; z php uruchamiam to funkcja exec: Kod exec('./panel.sh', $ans) foreach($ans as $line) { echo $line; } Na stronie wyświetla mi się tylko lol, niestety dalej nie odpala tych plików, a jak wykonuje ten skrypt z terminala Kod ./panel.sh to oczywiście działa. Prawa dostepu na czas testu ustawiłem na 777, do katalogów, jak i plików, gdzie znajdują sie mac, htb... jak i cały katalgo www. Mam nadzieję ze dobrze wytłumaczyłem, na czym polega problem. Z góry dziękuje za zainteresowanie. Ten post edytował Dominis 13.02.2010, 22:22:34 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 15:10 |