Durch die Abfrage von $_SERVER["DOCUMENT_ROOT"] zum Ermitteln von TM_DOCROOT ist die Pfadermittlung ja grds. recht flexibel. Auf unserem Strato-Server sieht es allerdings so aus, dass $_SERVER["DOCUMENT_ROOT"] bei einer Subdomain, die sich in einem Unterverzeichnis der Hauptdomain befindet, denselben Pfad wie bei der Hauptdomain beinhaltet.
Zur Behebung dieses Problems habe ich das Unterverzeichnis der Subdomain bei der Definition von TM_DOCROOT mit angegeben. Betroffen waren davon folgende Dateien:
- include/install/install_conf.inc.php (Z. 26)
- include/Foot.inc.php (Z. 30)
Außerdem fände ich es sinnvoll, wenn in include/install/install_install.inc.php die Datei include/tm_config.inc.php nicht mit dem hart codierten Pfad von TM_DOCROOT erzeugt wird, sondern auch durch Abfrage von $_SERVER["DOCUMENT_ROOT"]. Irgendwann kam nämlich Strato bei uns einfach mal auf die Idee, DOCUMENT_ROOT zu ändern, was dazu führte, dass man nicht mehr auf Tellmatic zugreifen konnte. (Leider waren für die Admin-Oberfläche zusätzlich noch die absoluten Pfade zur .htpasswd-Datei in den .htaccess-Dateien anzupassen, aber da kann man ja nicht $_SERVER["DOCUMENT_ROOT"] angeben.)
Vorschlag für include/install/install_install.inc.php, Z. 173:
'define("TM_DOCROOT",$_SERVER[\'DOCUMENT_ROOT\']);'."\n".
Vielleicht lässt sich die Ermittlung des Subdomain-Unterverzeichnisses ja auch noch irgendwie automatisch ermitteln. Aber das müsste ich erst ausprobieren.
ja daran arbeite ich noch,
strato war aber immer schon ein sonderfall durch ihr verschachteltes sehr seltsames virtuelles nfs mapping.....
aber... subdomain im gleichen docroot wie die hauptdomain und nur in einem unterverzeichnis? ist das nicht irgendwie "unlogisch"? entweder subdomain mit eigenem docroot oder verzeichnis in der hauptdomain. naja, strato halt..... no comment ;-)