Freigabe von Verzeichnissen oberhalb des DocumentRoot

Giz

Registered User
Hallo erstmal,

ich habe mir vor kurzem bei Strato nen V-Server einrichten lassen.
Nun versuche ich krampfhaft, dass ich von verschiedenen Subdomains auf die selben PHP-Dateien außerhalb des Document-Roots zugreifen kann.

Hier einer meiner Versuche :

vhost.conf :
Code:
php_admin_flag safe_mode Off
php_admin_value open_basedir "/var/www/vhosts/domain.com/subdomains/sub1/httpdocs:/var/www/vhosts/domain.com/subdomains/exec:/tmp"
(Wobei bei mir natürlich nicht domain.com steht ;) )

Wenn ich die php_admin_value... Zeile direkt in die httpd.include einfüge funktioniert alles wunderbar nach Neustart des Servers. Die Eintragungen sind aber natürlich bei Änderungen über Plesk wieder verschwunden.

Wieso werden die vhost.conf Zeilen nicht eingefügt?
Ich habe die vhost.conf sowohl im Verzeichnis /var/www/vhosts/domain.com/conf als auch im /home/httpd/vhosts/domain.com/conf aber es interessiert nicht. Nix passiert.

Das ist das, was ich darüber gelesen habe. Wo ist mein Denkfehler?! :confused:
 
Hallo!

Auch an ein:
Code:
/usr/local/psa/admin/sbin/websrvmng -ur --vhost-name=domain.tld
gedacht, damit die vhost.conf von Plesk "eingebaut" wird?

Gruß flyingoffice
 
MOD: Full-Quote entfernt!

Jepp, auch das ohne Erfolg und in verschiedenen Ausführungen...:(
 
Last edited by a moderator:
ggf. hilft es die php_admin_value und php_admin_flag Einträge mit einem passenden
Code:
<directory {Pfad}>
...
</directory>
einzuklammern.

Alternativ könnest Du für Dein Vorhaben auch auf die Apache Alias Direktive zurückgreifen.

Gruß flyingoffice
 
flyingoffice said:
ggf. hilft es die php_admin_value und php_admin_flag Einträge mit einem passenden
MOD: Quote gekürzt!
Auch das habe ich versucht. Nur zum besseren Verständnis : Welchen Pfad müsste ich hier angeben? Den, wo die vhost.conf liegt?
flyingoffice said:
Alternativ könnest Du für Dein Vorhaben auch auf die Apache Alias Direktive zurückgreifen.
Nun, ich denke hier habe ich das selbe Problem, dass ich diese nicht in die httpd.include reinbekomme. Oder habe ich da einen Denkfehler?:o
 
Last edited by a moderator:
Egal welche der beiden Möglichkeiten Du nutzt, es muß dann ein entsprechender include für die vhost.conf in der httpd.include vorhanden sein.

Als Directory gibs Du den gleichen an, wie in der httpd.include.

Gruß flyingoffice
 
Evtl. hast Du einfach einen kleinen Fehler in der Bennennung oder in den Benutzerrechten der vhost.conf.
Aber Du kannst es auch umgehen, indem Du in die Direktiven direkt in die httpd.conf oder apache2.conf schreibst. (Eingeklammert in ein Directory.)

huschi.
 
Hallo,

habe keine Ahnung warum, aber jetzt funktioniert es mit einer vhost.conf im conf Verzeichnis der Subdomain. Möglichweise habe ich bei meinen vielen Versuchen auch noch was anderes geändert?!

Habe jetzt bei meinen Versuchen ein paar etwas unterschiedliche Befehle "erlesen", um die Änderungen zu übernehmen. Kann mir die mal jemand erklären? Angewendet habe ich sie, aber welcher nu eigentlich der "richtige" wäre, weiß ich noch nicht. Es handelt sich hierbei um

/usr/local/psa/admin/sbin/websrvmng -ur --vhost-name=domain.com

/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=domain.com

/usr/local/psa/admin/sbin/websrvmng -ar.

Übrigens dachte ich, dass der Text der vhost.conf in die httpd.include geschrieben wird. War aber nicht so. Oder habe ich in der falschen gesucht?

@flyingoffice : Danke, hast mir sehr geholfen.
@Huschi : War jetzt nicht mehr nötig, dieses Wissen konnte ich aber zusammen mit der von flyingoffice vorgeschlagenen Apache Alias Directive auch gleich verwenden :D

Schön auf Leute zu treffen, die wissen wovon sie reden...

Cya, Giz
 
Giz said:
/usr/local/psa/admin/sbin/websrvmng -ur --vhost-name=domain.com
Bindet die vhost.conf in die httpd.include ein und startet Apache neu
Giz said:
/usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=domain.com
Bindet die vhost.conf in die httpd.include ein ohne Apache neu zu starten
Giz said:
Übrigens dachte ich, dass der Text der vhost.conf in die httpd.include geschrieben wird. War aber nicht so. Oder habe ich in der falschen gesucht?
Die vhost.conf wird mit einem include Befehl in die httpd.include eingebunden die sich im conf Verzeichnis der Domain befindet.
Code:
# /var/www/vhosts/domain.tld/conf/httpd.include
...
include /var/www/vhosts/domain.tld/conf/vhost.conf
...
Gruß flyingoffice
 
Last edited by a moderator:
flyingoffice said:
Die vhost.conf wird mit einem include Befehl in die httpd.include eingebunden die sich im conf Verzeichnis der Domain befindet.
Jetzt habe ich es verstanden... :D
Habe zwar nicht gefunden, an welcher Stelle die vhost.conf der Subdomains eingebunden wird, aber solange es funktioniert...

Ist es denn bei solchen Änderungen erforderlich Apache Neu zu starten?

Cya, Giz
 
Giz said:
Ist es denn bei solchen Änderungen erforderlich Apache Neu zu starten?
Man Unterscheidet zwischen 'Neustart' (restart) und 'Neuladen' (reload).
Ein restart beendet den ganzen Apache und startet ihn von Grundauf neu.
Ein reload ließt lediglich die neue Konfiguration ein ohne den Apache neu zustarten.

Nach einer Änderung der Konfiguration muß ein Programm immer darüber informiert werden, daß er die Konfig neu lesen soll. Daher ist zumindest ein reload immer nötig.

PS: "/usr/local/psa/admin/sbin/websrvmng --help"

huschi.
 
Back
Top