Problem mit Rechten

Apache, Lighttpd, nginx, Cherokee
virtualia
Posts: 5
Joined: 2007-07-28 16:25

Problem mit Rechten

Post by virtualia » 2007-07-28 16:37

Hallo,

erstmal vorweg: Hi, ich bin André alias virtualia. Arbeite schon lange mit Rootservern und PHP etc., jedoch nicht im tieferen Sinne was das administrieren von Rootservern angeht (installen etc. schon usw.) nur nicht alles ist mir vertraut. PHP dagegen professionel. Fall ihr noch Fragen habt, bzw. interessiert seit was ich sonst noch so mache könnt ihr mich einfach fragen.

So nun zu meinem Problem:

Ich habe ebend SuSE 10.0 frisch installiert und über yast die ganzen apache2 + php5 + mysql usw. installiert und auch imagemagick.

So wenn ich jetzt versuche über eine php seite das proggi convert aufzurufen mit passthru, exec, shell_exec oder system funktioniert es nicht. Es kommt keine Ausgabe und es passiert auf dem Server auch nichts.

Der ganze Befehl per copy&paste über ssh läuft 1a.

Nun, als nächstes mal den error_log von apache2 angeschaut und siehe da bei dem convert Befehl steht "Permission denied". Sieht also aus ob der Benutzer vom Apache (www) keine ausreichenden Rechte hat, denn an der php.ini liegts meines Wissen nach nicht, disabled functions ist leer, safe_mode off

Kann mir da jetzt jemand vielleicht behilflich sein und mir sagen, wie ich das abändern kann, dass der apache user die rechte hat convert auszuführen ?

Vielen Dank im Voraus!

mfg
virtualia

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Problem mit Rechten

Post by dtdesign » 2007-07-28 17:01

Hallo virtualia,

"Permission denied" bezieht sich vermutlich auf das Verzeichnis, in das PHP schreiben möchte. Da ich davon ausgehe, dass PHP als Apache-Modul läuft, muss das Verzeichnis entweder mit den entsprechenden Rechten ausgestattet werden (Stichwort: chmod; zum testen kannst du erstmal 777 nehmen, später stückchenweise beschneiden) oder alternativ das Verzeichnis auf Minimalrechte (644) setzen und den Eigentümer auf den Benutzer unter dem Apache (z.B.: www) läuft ändern.

Gruß
dtdesign

virtualia
Posts: 5
Joined: 2007-07-28 16:25

Re: Problem mit Rechten

Post by virtualia » 2007-07-28 17:27

Vielen lieben Dank, es hat an den Ordnerrechten gelegen.

Ich hab mal einen neuen erstellt und mit chmod 777 schreibrechte gegeben und nun funktioniert alles.
Ist nur komisch, dass die php datei selber auch in dem ordner liegen muss der schreibrechte hat.

Nochmals Danke und ein schönes Wochenende!

mfg
virtualia

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Problem mit Rechten

Post by dtdesign » 2007-07-28 18:48

virtualia wrote:Ich hab mal einen neuen erstellt und mit chmod 777 schreibrechte gegeben und nun funktioniert alles.
Der "chmod 777"-Hammer ist nicht die beste Lösung. Versuche die Rechte soweit zu beschneiden wie möglich, optimal ist meist 644.

Hast du die Besitzrechte überprüft und ggf. verändert (Stichwort: chown)?
virtualia wrote:Ist nur komisch, dass die php datei selber auch in dem ordner liegen muss der schreibrechte hat.
Kann nicht sein, dann sind falsche Berechtigungen am Werk.

Gruß
dtdesign

virtualia
Posts: 5
Joined: 2007-07-28 16:25

Re: Problem mit Rechten

Post by virtualia » 2007-07-28 19:40

hi ja ok geht jetzt alles. Besitzerrechte sind auf Apache User und verzeichnis auf 644.

ich hab nur noch ein anderes riesiges problem was ich gerade bemerkt habe:

move_uploaded_file funktioniert nicht. ich kann keine files per php uppen. Dabei ist die php.ini anscheinend richtig, safemode off und auch das formular kommt richtig an. Woran könnte es liegen das der dateiupload nicht geht ?

rechte wieder mit 777 getestet.

im error_log steht noch nichtmal ein hinweis, es kommt wieder gar nichts.

mfg
virtualia

dtdesign
Posts: 391
Joined: 2006-09-05 21:12
Location: Berlin

Re: Problem mit Rechten

Post by dtdesign » 2007-07-28 20:30

Wie verschiebst du den File den? Poste mal bitte relevante Codeabschnitte.

Gruß
dtdesign

virtualia
Posts: 5
Joined: 2007-07-28 16:25

Re: Problem mit Rechten

Post by virtualia » 2007-07-28 22:03

hi,

also kopieren tu ich das file(jpeg bild) so:

Code: Select all

echo move_uploaded_file($FILES['imgfile']['tmp_name'], "/srv/www/vhosts/meineaddy/httpdocs/content/photos/neuesbild.jpg");
die $_FILES Variablen sind alle ok, hab die Ausgabe mit echo getestet alle sind voll und auch korrekt(denk ich mal)

hier ein Beispiel:

Code: Select all

	$org_name =    $_FILES['imgfile']['name'];
	$org_tmpname = $_FILES['imgfile']['tmp_name'];
	$org_size =    $_FILES['imgfile']['size'];
	$org_type =    $_FILES['imgfile']['type'];
// debug 
echo $org_name."<br>".$org_tmpname."<br>".$org_size."<br>".$org_type;
Ergebnis:

Code: Select all

9514066.jpg
/tmp/phpDAC1zg
304783
image/jpeg/
mfg
virtualia

virtualia
Posts: 5
Joined: 2007-07-28 16:25

Re: Problem mit Rechten

Post by virtualia » 2007-07-29 11:04

ok jetzt gehts.

Die zwischenlösung die ich jetzt genommen habe war, dass ich mich von dem Admin-Panel Plesk 8.2.0 getrennt habe. Das schränkt einen sowas von ein und die hälfte davon braucht man sowieso nicht.

Ich hab das ganze jetzt per Hand konfiguriert.

mfg
virtualia