berechtigungen am server freischalten

harrry

Erfahrenes Mitglied
Hello again,

das ist für mich sehr knifflig: wie gebe ich bei "serverseitiger Skriptverarbeitung" mit PHP auf einem Kundenserver die entsprechenden Ordner frei?

Ich habe einen Ordner mit JPGs, ein XML-doc mit den Daten, die in Flash eingelesen werden und zwei PHP-Dingens, für Content-Übertragung und Bilder-Upload. Dazu muss ich sagen, es klappt eh, was meine XML-Daten betrifft. Nur will ich auch Bilder hochladen können - und da funktioniert nun auf dem neuen Server der Upload nicht.

Ich bin mir übrigens sicher, dass die Skripts in Ordnung sind: denn sie funktionieren inklusive Bilder-Upload auf meinem Server, da hab ich wohl mal zufällig die Einstellungen richtig hingekriegt.

Was muss ich denn da nun freigeben? Ich nehme an, den Bilderordner? Und was wäre da zum Anhaken? Lese-, Schreib- und Execute-Rechte und dann noch "user", "public", usw., für mich alles ein spanisches Dorf (nichts gegen spanische Dörfer!). Auf welche "Zahl" muss ich kommen (755 hab ich gehört) und wie schaff ich das?

Und stimmt es wirklich, dass man diese Einstellungen mit Dreamweaver MX 2004 nicht vornehmen kann, sondern ein extra FTP-Programm braucht? (Kennt jemand eine gute Freeware?)

Herzlichen Dank im Voraus!
 
Hi,

mit Flash hat die Fragestellung nicht viel zu tun - die Rechte braucht das PHP-Script, das die hochgeladenen Daten dauerhaft speichern soll.

Ich schiebe Dich mal auf Verdacht ins Webserver-Forum (Stichwort: Apache-Berechtigungen); das PHP-Board wäre dann die zweite Anlaufstelle.

Gruß
.
 
Ja, falsche Platzierung, tut mir leid.

Möchte nur hinzufügen, dass ich nun die Rechte für das PHP-Skript (und sicherheitshalber auch für den Bilderordner) auf 755 gesetzt habe - genau dieselbe Konfiguration wie auf meinem alten Server (auf dem es ja klappt). Leider geht es mit denselben Einstellungen beim neuen Server noch immer nicht - dh. das hochgeladene Bild wird schon in der Vorschau nicht angezeigt.

Und noch was: im Verzeichnis dieses neuen Servers gibt es eine "cgi-bin" - gehört das PHP-Zeug vielleicht da rein? Und muss ich dann nicht alle Pfade ändern...?

Bitte um Hilfe!
 
Zuletzt bearbeitet:
Oh, sehr interessant, das ist ja eine endlose Liste.

Sieht so aus, als hättest Du mit Deiner Vermutung recht gehabt, es steht da nämlich was von safe_mode = on. Schön. Oder vielmehr schlimm. Und was mach ich nun? Wie stell ich das nun an bzw. aus bzw. um?

Zu Sicherheit hab ich auch noch rausgeschrieben, was das Dings sonst noch zum Thema safety auswirft:
sql.safe_mode = off
safe_mode_include_dir = no value
safe_mode_gid = off
safe_mode_exec_dir = no value
safe_mode_allowed_env_vars = PHP_
safe_mode_protected_env_vars = rs LD_LIBRARY_PATH
Thread Safety = disabled

Lieben Dank für Deine Hilfe!
 
Hallo Harrry!

Schau mal bitte ob das Script funktioniert, wenn der Bildordner Modus 777 hat.
Wenn nämlich der Hoster einen unterschiedlichen User für PHP und FTP hat, könntest du mit 755 ein Problem haben. 755 heißt (siehe untere liste):

Besitzer darf
LESEN/SCHREIBEN/AUSFÜHREN
Die Gruppe darf
LESEN/AUSFÜHREN
und alle anderen
LESEN/AUSFÜHREN


Das ist eine weitere Möglichkeit woran es liegen könnte.
Ansonsten wären Fehlermeldungen hilfreich! Dann müssen wir nicht rumraten...


Übersicht über die Rechte
Value | Permission Level
400 | Owner Read
200 | Owner Write
100 | Owner Execute
40 | Group Read
20 | Group Write
10 | Group Execute
4 | Global Read
2 | Global Write
1 | Global Execute

Die Rechte werden einfach zusammengezählt (Global/Others, Group und Owner)
Beispiel1: 400 + 200 + 100 = 700 / Besitzer darf lesen/schreiben/ausführen
Beispiel2: 400 + 100 = 500 / Besitzer darf lesen und ausführen
usw.
 
Zuletzt bearbeitet:
Vielen Dank, es ist höchst eigenartig.

Mit 777 auf Bilderordner, PHP-Skript und XML-Datei funktioniert schon einiges mehr, aber irgendwie doch nicht.

Jedenfalls: in der Upload-Bildvorschau wird das Bild nach dem Raufladen nach wie vor NICHT angezeigt (was es sonst mit diesem Skript sehr wohl tut), aber dennoch, die Meldung "Upload successful" kommt und das Bild landet tatsächlich am Server im entsprechenden Ordner.

ABER: Auf der Site wird es nicht angezeigt, schlimmer noch, es sind auch ANDERE Bilder aus demselben Ordner, die ich gar nicht angerührt habe, plötzlich nicht mehr sichtbar - nicht alle, sondern nur einige, seltsamerweise. Und das, obwohl sie noch brav am Server im Ordner liegen.

Ich dachte, meine XML-Datei muss beim Aktualisieren irgendwie korrumpiert worden sein, aber das war es nicht. Erst in dem Moment, als ich eines (nur eines!) der Bilder am Server gelöscht und nochmals via FTP raufgespiel habe, wurden ALLE Bilder, auch die zuvor verschwundenen, wieder auf der Site angezeigt.

Da brat mir doch einer einen Storch.

Kennt Ihr das? Dass JPGs irgendwie auf magische Art unbrauchbar werden?

Very puzzled, Harry
 
Dann würde ich raten das Script (wenn möglich) mal zu posten, das einer von uns mal darüber schauen kann. Falls es ein frei verfügbares Script ist reicht auch ein Link zur Seite des Entwicklers. Wenn wir raten müssen, ist Dir damit nicht geholfen (zumindest dauert es viel länger). Meist kann ein Problem verschiedene Ursachen haben.
 
Hm, posten ist sehr kompliziert, müsste von allen Dateien Testversionen erstellen, tja.

Aber ich denke, ich habe das Problem gepinpointed, wie der Wiener sagt. Die Skripte sind wirklich alle in Ordnung, da die idente Konfiguration auf einem anderen Server funktioniert. Der CHMOD des Bilderordners steht auf 777.

Herausgestellt hat sich Folgendes: neu hochgeladene Bilder landen zwar tatsächlich im entsprechenden Ordner und auch der neue Pfad steht, wie gewünscht, nach dem Update in meiner XML-Datei - also: Bild da, Pfad richtig. Dennoch werden NEUE Bilder nicht angezeigt, denn, und jetzt kommts:

Die per FTP auf den Server geladenen Bilder haben einen CHMOD von 644, aber die per PHP-Upload frisch Hinzugefügten haben nur einen CHMOD von 600 (da fehlen also die Lese-Rechte für Gruppen und Public)!

Meine konkrete Frage also: wie kann ich beim Upload auf den CHMOD-Status neu hochgeladener Bilder Einfluß nehmen?
 
harrry hat gesagt.:
Die per FTP auf den Server geladenen Bilder haben einen CHMOD von 644, aber die per PHP-Upload frisch Hinzugefügten haben nur einen CHMOD von 600 (da fehlen also die Lese-Rechte für Gruppen und Public)!

Meine konkrete Frage also: wie kann ich beim Upload auf den CHMOD-Status neu hochgeladener Bilder Einfluß nehmen?

Okay, diese Informationen helfen doch schon mal weiter.
Du müßtest das Script umschreiben. Und zwar müßtest Du in dem Teil, wo die hochgeladene Datei aus dem temporären Ordner in den Bildordner kopiert wird den PHP-Befehl chmod() verwenden. Das sollte Dein Problem lösen. Der Server hat ein recht restriktives umask wie es scheint :-)
 
Zurück