Mit PHP auf beliebige Verzeichnisse zugreifen

Status
Für weitere Antworten geschlossen.

dahmsmx

Benutzer
Mitglied seit
08. Feb 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Guten morgen, leider hat mir die ausgiebige Forensuche diesmal nicht geholfen:

Ich möchte per PHP-Script die EXIF-Daten aller Fotos in eine Datenbanktabelle schreiben.
Solange die Fotos im Ordner /photos/ liegen, kann ich ohne Probleme darauf zugreifen.
Um aber der nervigen und platzraubenden Konvertierung zu umgehen, habe ich sie in einen neuen Gemeinsamen Ordner /fotos/ gelegt.

Mit anderen Worten:
/volume1/photo/ --> kann man per php zugreifen
/volume1/fotos/ --> kann man nicht zugreifen (übrigens auch nicht auf andere Systemordner wie /music/)

Dabei findet/erkennt PHP die Ordner erst gar nicht, z.B. mit der PHP-Funktion is_dir().
Soweit ich das sehe, sind die Rechte gleich eingestellt

Hat irgendjemand eine Idee?

Vielen Dank, dahmsmx
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
openbasedir Restriction im DSM für den neuen Pfad angepasst? Darf der Apache User (nobody) dieses Verzeichnis überhaupt lesen?
 

dahmsmx

Benutzer
Mitglied seit
08. Feb 2013
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Super, das wars.
open_basedir in /usr/syno/etc/php/user-setting.ini erweitert um /volume1/fotos:
Nach Neustart gings.

Vielen Dank!
 

stargate2k

Benutzer
Mitglied seit
13. Mrz 2012
Beiträge
299
Punkte für Reaktionen
0
Punkte
0
HI,

ich wollte keinen extra Thread aufmachen.. Ich habe ein ähnliches Problem.. Ich wollte mal mit dem html5 video tag rumspielen und wollte daher ein Video aus dem standard Video-Ordner anzeigen lassen.. die html Datei liegt in web/test und ich dachte als Pfad zum Video kann ich ../../video/video.mp4 angeben, das funktioniert aber nicht.. muss ich da noch irgendwas einstellen ? oder kann ich auch in ner htaccess den Pfad festlegen?
Gibt es eigentlich bei html5 nen Befehl mit dem ich mir den aktuellen Pfad ausgeben lassen kann ?

mfg stargate
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
schieb doch das video file nach /volume1/web
 

stargate2k

Benutzer
Mitglied seit
13. Mrz 2012
Beiträge
299
Punkte für Reaktionen
0
Punkte
0
Hi,

nein, dann habe ich die ganzen Videos ja doppelt.. Ich wollte halt direkt auf das Video-Verzeichnis verlinken können.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
dann könntest du dir ein Script schreiben welches z.B. per GET-Parameter "erkennt" welches Video gewünscht ist und dieses dann von dort lädt und an den Client ausgibt. Im html File gibst du dann dieses PHP Script als Ziel-URL an.
Du könntest es allenfalls auch mit einem Link probieren, wobei ich allerdings nicht glaube, dass der apache einem Link folgt, der ausserhalb seines DocRoots das Ziel hat (habs aber nie getestet ;-)
Via Apache Konfig und einem Alias wäre auch ein Weg
 

stargate2k

Benutzer
Mitglied seit
13. Mrz 2012
Beiträge
299
Punkte für Reaktionen
0
Punkte
0
Hi,

ich wollte den Weg über nen Alias versuchen, aber irgendwie funktioniert das nicht.. Ich habe in der "httpd.conf" unter <IfModule alias_module>.. folgendes eingefügt..
Alias /videoTest/ /volume1/video/

<Directory /volume1/video>
AllowOverride None
Order allow,deny
Allow from all
</Directory>

wenn ich allerdings die DS neustarte, dann ist der Eintrag in der httpd.conf verschwunden !

jetzt stellen sich mir natürlich 2 Fragen ^^
1.) wieso verschwindet der Eintrag einfach und wie kann ich ihn dauerhaft in der config behalten ?
2.)stimmen die Pfade so wie ich sie oben angegeben habe ? kann ich dann einfach mit videoTest/Unterordner/video.mp4 auf das Video zugreifen ? oder muss ich die volle URL zu meiner DS im Video-Tag angeben ? und könnte der Unterordner ein Problem werden ? die Videos liegen bei mir alle nochmal in seperaten ordnern z.b volume1/video/Unterordner/video.mp4 Ordner..

mfg stargate
 

fpo4711

Benutzer
Mitglied seit
26. Mai 2010
Beiträge
2.772
Punkte für Reaktionen
1
Punkte
0
Hallo,

das Configfile für den Apache der Webstation ist unter '/usr/syno/apache/conf/httpd.conf-user' zu finden. Den Rest kannst Du dann ja mal testen und sei doch so nett und teil uns dein Ergebnis mit. Die Problematik hat ja jahlives schon in #7 beschrieben.

Gruß Frank
 

stargate2k

Benutzer
Mitglied seit
13. Mrz 2012
Beiträge
299
Punkte für Reaktionen
0
Punkte
0
Hi,

also mit dem Alias funktioniert es jetzt wunderbar, wie fpo richtig gesagt hat muss man die user httpd benutzen..

mfg stargate
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat