Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-01-30 11:13:56

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

[PHP]system() nie wyświetla wyniku komendy

Hej,

Oczywiście standardowe komendy typu:

Kod:

<?php
system('ls -l');
?>

działa, ale za nic w świecie nie mogę doprowadzić do tego aby ruszyło

Kod:

<?php
system('fortune');
?>

Próbowałem z pełną ścieżką i inne.

Zainstalowane:

Kod:

i   nginx                                                                  - small, powerful, scalable web/proxy server
i A nginx-common                                                           - small, powerful, scalable web/proxy server - common files
i A nginx-full                                                             - nginx web/proxy server (standard version)
i   php5-cgi                                                               - server-side, HTML-embedded scripting language (CGI binary)
i A php5-common                                                            - Common files for packages built from the php5 source
i   php5-fpm                                                               - server-side, HTML-embedded scripting language (FPM-CGI binary)
i A php5-json                                                              - JSON module for php5

Początkowo nie miałem [tt]php5-cgi[/tt], ale po konsultacji z mati75 (bo jemu to działa) doinstalowałem, ale nie wiem co dalej bo trochę mnie to już przerosło.

Z poziomu konsoli za pomocą php5-cgi rusza i działa. Na stronie niestety niet.

/etc/nginx/sites-enable/default:

Kod:

server {
        listen 80 default_server;

        root /home/www/;
        index index.php index.html index.htm;

        server_name localhost;

        location ~ ^/~(.+?)(/.*)?$ {
                alias /home/$1/public_html$2;
                index index.php index.html index.htm;
                autoindex on;
        }

        location /public {
                alias /home/www/public/;
                index index.php index.html index.htm;
                autoindex on;
        }

        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;

                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }
}

Reszty nic nie zmieniałem tak więc jest dystrybucyjne...

Ktoś pomoże? Wiem, że to głupota, ale nie daje mi to spokoju dlaczego jeden program (ls) działa a inny (fortune) nie...

Z góry dzięki
Pozdrawiam

Ostatnio edytowany przez P@blo (2014-01-30 12:52:11)


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#2  2014-01-30 12:06:16

  Piotr3ks - Też człowiek :-)

Piotr3ks
Też człowiek :-)
Skąd: Białystok
Zarejestrowany: 2007-06-24

Re: [PHP]system() nie wyświetla wyniku komendy

Z tego co pamiętam to funkcja system() zwraca ostatnią linię wykonania polecenia - w Twoim przypadku zapewne jest to pusta linia.

Edit:

Kod:

<?php
system("/usr/games/fortune");
?>

W takiej formie u mnie działa.

Ostatnio edytowany przez Piotr3ks (2014-01-30 12:17:24)

Offline

 

#3  2014-01-30 12:22:47

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Może trochę przesadziłem z tym skryptem. Oczywiście próbowałem wszystkie możliwości...

Aktualnie kod jest taki:

Kod:

<?php
        echo '<html>';
        echo '<meta charset="utf-8">';
        echo exec("/usr/games/fortune -s");
        echo system("/usr/games/fortune -s");
        echo '</html>';
?>

I nie działa...

[quote=Piotr3ks]W takiej formie u mnie działa.[/quote]
Fajnie :)


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#4  2014-01-30 12:50:29

  mati75 - Psuj

mati75
Psuj
Skąd: default city
Zarejestrowany: 2010-03-14
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

popraw mój nick w pierwszym poście.

Cos mi się wydaje, że gdzieś jest błąd w konfiguracji. Albo nginx albo php, bo u mnie działa.


[img]https://l0calh0st.pl/obrazki/userbar.png[/img]

Offline

 

#5  2014-01-30 12:53:53

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

[quote=mati75]popraw mój nick w pierwszym poście.[/quote]
Sory, palec źle wpadł...
[quote=mati75]Cos mi się wydaje, że gdzieś jest błąd w konfiguracji. Albo nginx albo php, bo u mnie działa.[/quote]
Nie mówię nie, ale jedyny konfig jaki zmieniałem to ten co podałem. Mogę podać inne, ale to proszę o info jakie.


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#6  2014-01-30 13:25:44

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Sory za post pod post.

Poradzono mi rozwiązanie takie:

Kod:

cat /home/www/public/fortune.sh
#!/bin/bash
/usr/games/fortune -s

-rwxrwxrwx 1 www-data www-data  34 sty 30 13:20 fortune.sh

./fortune.sh
190. Chuck Norris... (bla bla bla...)

cat /home/www/public/fortune2.php
<?php
        echo shell_exec("/home/www/public/fortune.sh");
?>

Ale, też nie działa... o_0


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#7  2014-01-30 14:09:51

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: [PHP]system() nie wyświetla wyniku komendy

A to musi być php?

Przecież system lub  shell_exec to jest dziura większa, niż lej po atomówce, w ten sposób można każdy serwer załatwić.
A php - to jest horror w dziedzinie bezpieczeństwa takich skryptów.

Nie lepiej zrobić sobie np w perlu robocika, który wisi na sockecie sieciowym,
i na zapytanie odpowiada wynikiem fortune?
W php lub cgi też łatwo ogarnąć wywołanie na socket.

Przy okazji elegancko można trzymać php w chroocie,

Albo może gotowy  moduł php?
http://pear.php.net/manual/en/package.fileformats.file-fortune.file-fortune.getall.php
Albo perlem (np jako cgi):
http://search.cpan.org/~gward/Fortune-0.2/Fortune.pm

Ostatnio edytowany przez Jacekalex (2014-01-30 14:14:26)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#8  2014-01-30 14:30:12

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Może i może, ale:
0. Laik ze mnie.
1. Nie znam Perla.
2. Generalnie mało wiem...

Zacząłem robić w php i tak dokładam dokładam, aż trafiłem na ten głupi problem widocznie nie do przejścia. Myślę, że dziura nie dziura, ale skoro innym to hula to czemu nie mnie?


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#9  2014-01-30 14:39:40

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: [PHP]system() nie wyświetla wyniku komendy

Znasz Perla lepiej, niż Ci się zdaje, jest łatwiejszy od PHP, praktycznie równie trudny, jak Bash. :D

W repozytorium PEAR masz też gotowy moduł do fortune dla php, jeśli perl jest bee. ;)

Jakbyś chciał się pobawić Gentusiem, to nawet jest pod ręką:

Kod:

* dev-php/PEAR-File_Fortune
     Available versions:  ~1.0.0
     Homepage:            http://pear.php.net/File_Fortune
     Description:         Interface for reading from and writing to fortune files.

Ostatnio edytowany przez Jacekalex (2014-01-30 14:42:55)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#10  2014-01-30 14:52:02

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Kusisz... ;) Ale to dobrze :D przeglądnę na pewno, ale mimo wszystko chciałbym się dowiedzieć dlaczego to nie działa.

Korzystałem z tego, więc sory bo mówiłem, że nic się nie zmieniało w innych configach, a jednak:
https://www.digitalocean.com/community/articles/how-to-install-linux-nginx-mysql-php-lemp-stack-on-debian-7

Tylko, że akurat to co było do zmienienia u mnie już było zrobione więc, dlatego nic nie zmieniałem (poza 1 na 0, ale to i tak mi nic nie robi).

Przeinstalowałem od nowa i zrobiłem to samo i dalej nie działa tak więc to nie ja psuje, jak coś to powyższy autor art'a.


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#11  2014-01-31 08:08:39

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Mam nowe informacje i mam nadzieje, że to będzie pomocne:

Kod:

pi@malina ~ $ fortune
#debian.pl
Apr 16 23:47:28 <ikuko> więcej grzechów nie pamiętam
Apr 16 23:48:47 <MadCow^> Grzechów :)
Apr 16 23:49:05 <ikuko> ;p
Apr 16 23:49:15 <MadCow^> ikuko :: Lubujesz w Grzegorzach ?
pi@malina ~ $ sudo su
root@malina:/home/pi# fortune
bash: fortune: command not found

Jeśli można prosić te osoby, którym to działało o sprawdzenie co się dzieje gdy wywoła się z root'a. Mam cichą nadzieje, że to winowajca...


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#12  2014-01-31 08:24:17

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

Sprawdziłeś po przelogowaniu w jakim znajdujesz się katalogu ?
Druga sprawa, skrypt w powłoce bash możesz wywoływać na kilka sposobów będąc w katalogu ze skryptem np.

Kod:

./skrypt.sh

lub

Kod:

bash skrypt.sh

Edyta.
Prawa nadane są odpowiednio ? Przynajmniej chmod +x.

Ostatnio edytowany przez ba10 (2014-01-31 08:48:24)


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#13  2014-01-31 08:55:11

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

[quote=ba10]Sprawdziłeś po przelogowaniu w jakim znajdujesz się katalogu ?[/quote]
Nie łapie...
[quote=ba10]Druga sprawa, skrypt w powłoce bash możesz wywoływać na kilka sposobów będąc w katalogu ze skryptem np.

Kod:

./skrypt.sh

lub

Kod:

bash skrypt.sh

Edyta.
Prawa nadane są odpowiednio ? Przynajmniej chmod +x.[/quote]
[quote=/me]

Kod:

cat /home/www/public/fortune.sh
#!/bin/bash
/usr/games/fortune -s

-rwxrwxrwx 1 www-data www-data  34 sty 30 13:20 fortune.sh

[/quote]


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#14  2014-01-31 09:06:40

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

[quote=P@blo]Sprawdziłeś po przelogowaniu w jakim znajdujesz się katalogu ?
Nie łapie...[/quote]
Jak logujesz się na roota to on loguje się jak nie masz inaczej ustawione w systemie, do swego katalogu domowego i może w w tym katalogu próbowałeś uruchomić skrypt, którego tam nie było.

[quote=ba10]Druga sprawa, skrypt w powłoce bash możesz wywoływać na kilka sposobów będąc w katalogu ze skryptem np.

Kod:

./skrypt.sh

lub

Kod:

bash skrypt.sh

[/quote]
Sprawdziłeś ? Uruchamia się skrypt wyżej podanymi sposobami ?

Ostatnio edytowany przez ba10 (2014-01-31 09:08:39)


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#15  2014-01-31 09:18:33

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Coś chyba jest za wcześnie dla nie dzisiaj tak więc BARDZO przepraszam bo chyba dalej nie trybie:

Kod:

pi@malina ~ $ sudo su
root@malina:/home/pi# cd
root@malina:~# cp /home/www/public/fortune.sh .
root@malina:~# ./fortune.sh
Sabina - ma ładne imię, ale dla psa, a nie dla kobiety
root@malina:~# bash fortune.sh
Barnaba - dobre imię dla osła, uczynny, miły wieśniaczek.
root@malina:~# cat fortune.sh
#!/bin/bash
/usr/games/fortune -s
root@malina:~# fortune
bash: fortune: command not found
root@malina:~# fortune-my
Idzie sobie panienka...
root@malina:~# ls -l /usr/bin/fortune-my
-rwxr-xr-x 1 root root 22172 sty 29 15:21 /usr/bin/fortune-my

Jak się loguje to jak widać ląduje w tym katalogu co byłem. Fortune-my jest skopiowany jak widać gdzie.

Kod:

root@malina:~# cat fortune.sh
#!/bin/bash
/usr/games/fortune -s
root@malina:~# cat /home/www/public/fortune2.php
<?php
        echo system("fortune-my");
        echo exec("fortune-my");
        echo system("/root/fortune.sh");
        echo exec("/root/fortune.sh");
?>

Mam nadzieje, że dobrze zrozumiałem i coś się przyda.


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#16  2014-01-31 09:41:21

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

Przekopiuj skrypt fortune.sh z katalogu root do katalogu /var/www ( czyli tam gdzie masz stronę www zapewne ). Plik php wyglądać powinien tak :

Kod:

<?php
echo exec("bash /var/www/fortune.sh");
?>

i powinno działać.


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#17  2014-01-31 09:50:23

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Kod:

pi@malina /home/www/public $ pwd
/home/www/public
pi@malina /home/www/public $ cat fortune.sh
#!/bin/bash
/usr/games/fortune -s
pi@malina /home/www/public $ ls -l fortune.sh fortune2.php
-rw-r--r-- 1 root     root     57 sty 31 09:47 fortune2.php
-rwxrwxrwx 1 www-data www-data 34 sty 30 13:20 fortune.sh
pi@malina /home/www/public $ cat fortune2.php
<?php
        echo exec("bash /home/www/public/fortune.sh");
?>

No niestety. Powinno, ale nie chce...


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#18  2014-01-31 10:00:41

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

Hmm, ciekawe... Czy użytkownik www-data ma dostęp do katalogów /home/www/public ?


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#19  2014-01-31 10:12:09

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Nie wiem co to znaczy ale chyba tak, bo jak już pisałem wcześniej inne skrypty działają poza tą komendą w katalogu /home/www/public. Teraz tylko zmieniłem właściciela tego katalogu bo był nim root, ale i tak nic to nie zmieniło...

Co więcej nawet takie coś:

Kod:

<?php
        exec("sudo sh -c '/usr/games/fortune -s > /home/www/public/fortunka'");
?>

i dodanie do sudo www-data nic nie zmienia... 'fortunka' jest pusta...


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#20  2014-01-31 10:44:56

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

Hmm ciężka sprawa u mnie działa i wersja taka :

Kod:

<?php
system('/usr/games/fortune -s');
?>

i taka :

Kod:

<?php
echo exec("bash /var/www/fortune.sh");
?>

Musi to być jakaś pierdoła, u wszystkich działa, u Ciebie nie, zwłaszcza, że podobno działają komendy z basha wstawione do php.
Edytka
Poszukaj czegoś w ustawieniach NGINX być może ma jakieś ustawienia co do php czy wykonywania skryptów.

Ostatnio edytowany przez ba10 (2014-01-31 11:00:19)


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#21  2014-01-31 10:56:14

  azhag - Admin łajza

azhag
Admin łajza
Skąd: Warszawa
Zarejestrowany: 2005-11-15

Re: [PHP]system() nie wyświetla wyniku komendy

Podpowiem, że root domyślnie nie ma /usr/games/ w PATH.


Błogosławieni, którzy czynią FAQ.
[url=http://www.opencaching.pl]opencaching[/url] :: [url=http://dug.net.pl/sources.list]debian sources.list[/url] :: [url=http://www.linuxportal.pl/blogi/azhag/wpisy]coś jakby blog[/url] :: [url=http://dug.net.pl/]polski portal debiana[/url] :: linux user #403712

Offline

 

#22  2014-01-31 11:29:25

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

No niestety:

Kod:

pi@malina ~ $ grep -r safe /etc/php5/
/etc/php5/fpm/php.ini:; **You CAN safely turn this off for IIS, in fact, you MUST
.**
/etc/php5/fpm/php.ini:;filter.default = unsafe_raw
/etc/php5/fpm/php.ini:; the 5th parameter to mail(), even in safe mode.
/etc/php5/fpm/php.ini:; http://php.net/sql.safe-mode
/etc/php5/fpm/php.ini:sql.safe_mode = Off
/etc/php5/fpm/php.ini:; Default host for mysql_connect() (doesn't apply in safe m
ode).
/etc/php5/fpm/php.ini:; Default user for mysql_connect() (doesn't apply in safe m
ode).
/etc/php5/fpm/php.ini:; Default password for mysql_connect() (doesn't apply in sa
fe mode).
/etc/php5/fpm/php.ini:; Default host for mysql_connect() (doesn't apply in safe m
ode).
/etc/php5/fpm/php.ini:; Default user for mysql_connect() (doesn't apply in safe m
ode).
/etc/php5/fpm/php.ini:; Default password for mysqli_connect() (doesn't apply in s
afe mode).
pi@malina ~ $ grep -r safe /etc/nginx/

Wydaje mi się, że to jest wina tego, że korzystam z php5-fpm a nie php5-cgi. Nie znam się na tym kompletnie, ale nie znalazłem tutora do tego cgi... Prędzej sam napisze skrypt w bashu, który wylosuje mi jakąś fortunke... Google jakoś mało konkretnie odpowiada na temat 'ngingx safe mode php'...


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#23  2014-01-31 12:31:49

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Nowe wieści. Otóż:

Kod:

<?php
        echo exec("bash /home/www/public/fortune.sh 2>&1");
        echo "</br>";
        echo system("bash /home/www/public/fortune.sh 2>&1");
?>

mówi na stronie:

Kod:

No fortunes found
fortune: /usr/share/games/fortunes: No fortune files in directory. fortune:/usr/share/games/fortunes not a fortune file or directory No fortunes found No fortunes found

Kod:

pi@malina /home/www/public $ ls -l /usr/share/games/
total 4
lrwxrwxrwx 1 root root   18 sty 31 12:15 fortune -> /usr/games/fortune
drwxr-xr-x 3 root root 4096 sty 31 12:24 fortunes
pi@malina /home/www/public $ ls -l /usr/share/games/fortunes/
total 12
drwxr-xr-x 2 root root 12288 sty 31 12:25 pl

Więc o co mu chodzi? Bo nie rozumiem...


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

#24  2014-01-31 12:35:16

  djjanek - Użytkownik

djjanek
Użytkownik
Skąd: whereis
Zarejestrowany: 2007-11-15
Serwis

Re: [PHP]system() nie wyświetla wyniku komendy

zobacz w logi serwera php moge się założyć że są wpisy o braku dostępu do katalogu czy możliwości wykonania jakiegoś programu.

Sprawdź dostęp do katalogu /usr/share/games/fortunes bo to do niego nie może się dobić serwer php.

Ostatnio edytowany przez djjanek (2014-01-31 12:36:37)

Offline

 

#25  2014-01-31 12:37:37

  P@blo - Nadworny matematyk

P@blo
Nadworny matematyk
Skąd: Wrocław v Jasło
Zarejestrowany: 2010-11-11

Re: [PHP]system() nie wyświetla wyniku komendy

Kod:

sudo tail /var/log/php5-fpm.log
[30-Jan-2014 16:14:21] NOTICE: configuration file /etc/php5/fpm/php-fpm.conf test is successful

[30-Jan-2014 16:14:22] NOTICE: fpm is running, pid 1792
[30-Jan-2014 16:14:22] NOTICE: ready to handle connections
[30-Jan-2014 16:14:22] NOTICE: systemd monitor interval set to 10000ms
[31-Jan-2014 10:13:38] NOTICE: Finishing ...
[31-Jan-2014 10:13:38] NOTICE: exiting, bye-bye!
[31-Jan-2014 10:13:39] NOTICE: fpm is running, pid 9447
[31-Jan-2014 10:13:39] NOTICE: ready to handle connections
[31-Jan-2014 10:13:39] NOTICE: systemd monitor interval set to 10000ms

Szkoda, że się nie założyłem ;)


[tt]ThinkPadX220i
| Procesor: Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz |
|  Debian: sid   |   Arch: amd64   |   Sound: alsa   |
| No DE | WM: DWM  |  DM: .bash_profile  |  BIOS+MBR |[/tt]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.020 seconds, 12 queries executed ]

Informacje debugowania

Time (s) Query
0.00011 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00179 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='44.192.53.34' WHERE u.id=1
0.00103 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '44.192.53.34', 1711619244)
0.00071 SELECT * FROM punbb_online WHERE logged<1711618944
0.00087 DELETE FROM punbb_online WHERE ident='3.238.57.9'
0.00093 DELETE FROM punbb_online WHERE ident='47.128.123.112'
0.00090 DELETE FROM punbb_online WHERE ident='54.36.149.63'
0.00082 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=25116 AND t.moved_to IS NULL
0.00006 SELECT search_for, replace_with FROM punbb_censoring
0.00354 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=25116 ORDER BY p.id LIMIT 0,25
0.00164 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=25116
Total query time: 0.01244 s