Hallo,
ich habe folgendes Problem:
Ich benötige für einen bestimmten Reseller-Account ein modifiziertes Domain-Template (skeleton). Im httpdocs-Verzeichnis soll per symbolischen Links auf ein bestimmtes Verzeichnis außerhalb der Domain-Verzeichnisstruktur verwiesen werden. Beispiel: CMS ist ein symlink auf ein Verzeichnis, das ich mithilfe eines svn-Exports gelegentlich füttere. Mithilfe des Symlinks sollen alle Domains bei Aufruf von http://www.domain.de/CMS Zugriff auf dieses Verzeichnis haben.
Praktisch funktioniert das ganze auch... Leider macht mir das Domain-Template einen Strich durch die Rechnung (wäre ja auch zu schön gewesen). Zwar kann ich in das entsprechende .skel - Verzeichnis symbolische Links anlegen – beim Erstellen einer neuen Domain werden diese Links aber nicht angelegt. Dr. Google habe ich zu diesem Problem schon ein paar Stunden interviewt, aber er ist da recht unkooperativ :-k
Hat jemand eine Lösung? Oder Anregungen zu einem Workaround?
Gruß
Coffein
symlinks im skeleton werden ignoriert
Re: symlinks im skeleton werden ignoriert
Hallo matzewe01,
danke für deine Antwort.
Die Sache mit der eigenen vhost.conf war mir bewusst. Da ich in die .skel auch ein conf Verzeichnis mit einer vhost.conf anlegen kann und in diese Datei eine Variable für den Domainnamen ablegen kann, ist das kein Problem. Wenigstens da funktioniert.
Leider weiß ich gerade nicht, wie mir die horde-conf weiterhelfen soll. So wie ich das sehe, löst Plesk das über eine Subdomain. Kann aber auch sein, dass ich gerade blind bin oder dass der Groschen mal wieder in Pfennigstücken fällt :)
Kannst du mich mit der Nase drauf stoßen? :roll:
danke für deine Antwort.
Die Sache mit der eigenen vhost.conf war mir bewusst. Da ich in die .skel auch ein conf Verzeichnis mit einer vhost.conf anlegen kann und in diese Datei eine Variable für den Domainnamen ablegen kann, ist das kein Problem. Wenigstens da funktioniert.
Leider weiß ich gerade nicht, wie mir die horde-conf weiterhelfen soll. So wie ich das sehe, löst Plesk das über eine Subdomain. Kann aber auch sein, dass ich gerade blind bin oder dass der Groschen mal wieder in Pfennigstücken fällt :)
Kannst du mich mit der Nase drauf stoßen? :roll:
Re: symlinks im skeleton werden ignoriert
mhhh...
Leider funktioniert das nicht per Subdomain. Es ist nicht nur ein Link auf ein Verzeichnis. Es ist jeweil ein Link auf das Backend, das Frontend und ein Verzeichnis mit ein paar PHP-Klassen, die sowohl Front- als auch Backend verwenden. Der Server ist übrigens zu 90% für die CMS-Lösung gemietet.
Gibt es noch eine andere Möglichkeit? Ich dachte evtl. an ein Shellscript, dass die Links anlegt, sobald eine neue Domain erstellt wurde. Ich hatte auch mal irgendwo gelesen, dass man irgendwo im Pleskpanel solche Aktionen auf ein Script legen kann. Leider finde ich in der Plesk-Doku mal wieder nix :(
Das ist zwar nicht der eleganteste Weg, aber im Moment wahrscheinlich meine einzige Hoffnung.
Im Moment sind es knapp 30 Domains, die mit dem CMS versorgt werden... An die 100 komme ich irgendwann auch noch ;)
Leider funktioniert das nicht per Subdomain. Es ist nicht nur ein Link auf ein Verzeichnis. Es ist jeweil ein Link auf das Backend, das Frontend und ein Verzeichnis mit ein paar PHP-Klassen, die sowohl Front- als auch Backend verwenden. Der Server ist übrigens zu 90% für die CMS-Lösung gemietet.
Gibt es noch eine andere Möglichkeit? Ich dachte evtl. an ein Shellscript, dass die Links anlegt, sobald eine neue Domain erstellt wurde. Ich hatte auch mal irgendwo gelesen, dass man irgendwo im Pleskpanel solche Aktionen auf ein Script legen kann. Leider finde ich in der Plesk-Doku mal wieder nix :(
Das ist zwar nicht der eleganteste Weg, aber im Moment wahrscheinlich meine einzige Hoffnung.
Im Moment sind es knapp 30 Domains, die mit dem CMS versorgt werden... An die 100 komme ich irgendwann auch noch ;)
Re: symlinks im skeleton werden ignoriert
http://httpd.apache.org/docs/2.2/mod/mod_alias.htmlcoffein wrote:Gibt es noch eine andere Möglichkeit?
Re: symlinks im skeleton werden ignoriert
Das wird wohl nicht reichen... wenn es sich um das CMS handelt, welches ich vermute (Typo3?) oder zumindest ähnlich arbeitet, dann wird von der Applikation selbst auf Dateien unter dem ver-symlink-ten Pfad per fopen() zugegriffen - also unter Umgehung des Webservers.
“Some humans would do anything to see if it was possible to do it. If you put a large switch in some cave somewhere, with a sign on it saying 'End-of-the-World Switch. PLEASE DO NOT TOUCH', the paint wouldn't even have time to dry.” — Terry Pratchett, Thief of Time
Re: symlinks im skeleton werden ignoriert
Das CMS ist nicht Typo3, es ist ein Eigenbau.
Ich hab allerdings die skeleton-Lösung weiterverfolgt:
1: ein Shellscript, das mir im entsprechenden Verzeichnis die Symlinks anlegt, wobei der erste Parameter der Domainname ist:
2: Ich habe je nach Reseller (oder Kunde? weiß ich gerade gar nicht) mehrere skeletons. Je nachdem was ich gerade anlegen will (normales Hosting oder ein Hosting mit dem CMS). Das Skript in das entsprechende CMS-Reseller .skel-Verzeichnis gespeichert.
3: Im Event-Handler ein Ereignis anlegen:
Ereignis: Physikalisches Hosting angelegt
Prio: normal
Benutzer: root
Befehl: /srv/www/vhosts/<new_domain_name>/pfadZumScript/script.sh
4: eine vhost.conf muss bei der neuen Domain natürlich auch angelegt werden, da sonst den "symlinks not gefollowed" wird. Außerdem packe ich noch ein paar Rewrite-Rules rein, damit kann ich mir erstmal eine .htaccess sparen:
die vhost.conf kommt ins entsprechende .skel-Verzeichnis in das Verzeichnis conf.
Das ganze funktioniert bei mir bestens. Ist vielleicht nicht die Königslösung, aber besser bekomme ich es mit meinen bescheidenen Linux- und Pleskkenntnissen leider nicht hin.
Ich hab allerdings die skeleton-Lösung weiterverfolgt:
1: ein Shellscript, das mir im entsprechenden Verzeichnis die Symlinks anlegt, wobei der erste Parameter der Domainname ist:
Code: Select all
#!/bin/sh
ln -s /srv/www/vhosts/meine-quelldomain/mein/zielverzeichnis1/ /srv/www/vhosts/$1/httpdocs/meinZiellink1
ln -s /srv/www/vhosts/meine-quelldomain/mein/zielverzeichnis2/ /srv/www/vhosts/$1/httpdocs/meinZiellink2
ln -s /srv/www/vhosts/meine-quelldomain/mein/zielverzeichnis1/meineZieldatei1.php /srv/www/vhosts/$1/httpdocs/meinZiellink3
ln -s /srv/www/vhosts/meine-quelldomain/mein/zielverzeichnis1/meineZieldatei2.php /srv/www/vhosts/$1/httpdocs/meinZiellink4
3: Im Event-Handler ein Ereignis anlegen:
Ereignis: Physikalisches Hosting angelegt
Prio: normal
Benutzer: root
Befehl: /srv/www/vhosts/<new_domain_name>/pfadZumScript/script.sh
4: eine vhost.conf muss bei der neuen Domain natürlich auch angelegt werden, da sonst den "symlinks not gefollowed" wird. Außerdem packe ich noch ein paar Rewrite-Rules rein, damit kann ich mir erstmal eine .htaccess sparen:
Code: Select all
<Directory /srv/www/vhosts/@domain_name@/httpdocs>
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^.*_([0-9]+).html:?(.*)?$ index.php?nav=$1&$2
php_admin_value open_basedir "/srv/www/vhosts/@domain_name@/httpdocs:/srv/www/vhosts/pfadZuDen/lnTargets"
</Directory>Das ganze funktioniert bei mir bestens. Ist vielleicht nicht die Königslösung, aber besser bekomme ich es mit meinen bescheidenen Linux- und Pleskkenntnissen leider nicht hin.
