# PHP fastCGI und PHP system+exec befehle



## olli (29. Sep. 2010)

hallo,
ich benutze ISPconfig3 im fastCGI-PHP modus.

kann mir jemand sagen, wie ich dort am ehesten php-system und php-exec befehle absetzen kann in einem web-verzeichnis?

im moment scheint es an der open basedir restriction zu klemmen. ich habe versucht /usr/bin zu dem open basedir pfad hinzuzufügen, aber das brachte nicht den gewünschten erfolg.

muß ich ggf. eine andere PHP-betriebsmodi wählen, um system() oder exec() benutzen zu können?

viele grüße und danke


----------



## Till (29. Sep. 2010)

open_basedir wird meines Wissens nach beim exec nicht überprüft. Wie lautet denn die genaue Fehlermeldung die Du beim exec in der Webseite und im error.log erhältsts?


----------



## olli (29. Sep. 2010)

hallo till,

danke, dass du dich meines problems annimmst.

ich erhalte folgende meldung:


```
/bin/tar: /var/www/clients/client4/web4/web: Cannot savedir: Permission denied
/bin/tar: Error exit delayed from previous errors
```
das komische ist: wenn ich diesen befehl direkt auf der konsole absetze, dann funktioniert er. es muß also irgendeine PHP-einstellung sein und das script ist auch schon auf einem älteren server installiert gewesen und dort gelaufen.

es handelt sich dabei um ein kleines backupscript, welches definierte verzeichnisse, versehen mit einem zeitstempel, in einer tar-datei ablegt.

hast du noch eine idee?

safe_mode ist ja bei ISPconfig3 generell "off" bzw. nicht gesetzt, richtig?

lieben dank


----------



## Till (29. Sep. 2010)

Laut der Fehlermeldung hat tar keine Schreibrechte in dem Verzeichnis wo Du das tar.gz erstellen willst.

1) Wie ist denn der genaue tar Befehl, den Du aufrufts?
2) Hast Du auch suexec aktiviert? Ohne suxece gibt es keine Schreibrechte im web.


----------



## olli (29. Sep. 2010)

/usr/sbin/suexec -V gibt mir das:

 -D AP_DOC_ROOT="/var/www"
 -D AP_GID_MIN=100
 -D AP_HTTPD_USER="apache"
 -D AP_LOG_EXEC="/var/log/httpd/suexec.log"
 -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
 -D AP_UID_MIN=500
 -D AP_USERDIR_SUFFIX="public_html"

hilft dir das weiter?

der befehl lautet (eingekleidet in system() ):

```
nice -n 19 /bin/tar -pczPf /var/www/clients/client4/web4/web/modules/backup/html/29.09.2010_20_Uhr_35.tgz /var/www/clients/client4/web4/web --exclude=/var/www/clients/client4/web4/web/modules/backup/*
```
1000 dank und schönen abend


----------



## Till (29. Sep. 2010)

Es geht darum ob Du suexec in der webseite aktiviert hast oder nicht. Ruf bitte die Webseiteneinstellungen in ispconfig auf und kontrollier ob Du die suexec checkbox aktiviert hast.

Außerdem poste bitte aml die Ausgabe von:

ls -la /var/www/clients/client4/web4/web/modules/backup/html


----------



## olli (29. Sep. 2010)

oh sorry, es war nicht aktiviert...

bitte nicht schlagen... ich hab' es wirklich übersehen bei der seite.

dank' dir trotzdem für diesen spitzen-support!

viele grüße aus schleswig-holstein und einen schönen abend


----------



## olli (25. Okt. 2010)

hi till,

also irgendwie ist immer noch der wurm drin. ich dachte das wäre es mit dem anhaken von suexec. ledier führte das immer noch nicht zum erfolg.

ich benutze für dieses web fast-cgi und suexec ist angehakt.
leider kann ich per PHP immer noch keine exec() funktionen absetzen.

die logdateien sehen unspektakulär aus. 
hast du vielleicht noch eine idee?

danke & gruß


----------



## Till (25. Okt. 2010)

Was genau rufst Du per exec auf und welche Fehlermeldung erhältst Du?


----------

