Multi-Site: settings.php der neuen Domain wird nicht erkannt
am 21.09.2013 - 22:48 Uhr in
Hallo,
mal eine Frage: Ich habe eine Drupal-Multisite-Installation übernommen, die nach folgendem Schema aufgebaut ist:
sites/default -> übergeordnete Deutschlandseite, z.B. www.deutschland.de
sites/bundesland.de -> Bundeslandebene, z.B. www.bayern.de
sites/stadtseite.de -> Stadtebene, z.B. www.muenchen.de
Das Ganze bricht sich herunter bis auf einzelne Städte. Es wird mit einer gemeinsamen Datenbank gearbeitet, sodass in allen Unterordnen die settings.php gleich sind, bis auf die Zeilen $conf['site_name']
und $base_url
, welche sich inhaltlich unterscheiden.
Nun habe ich zwei weitere Domains in der Multi-Site angelegt und stelle fest, dass diese nicht erkannt werden und ein 500 Internal Server Error auftritt. Der Verweis vom Server ist bei allen Domains auf das Hauptverzeichnis der Installation gesetzt.
Bei Durchsicht der DB erkenne ich eine Tabelle ds_regions
, in welcher die bisherigen Seiten eingetragen sind mit einer eindeutigen Zuordnung zur Ebene (Bund, Land, ...) sowie den zur Stadt zugehörigen Orten, jeweils über eine eindeutige Nummer zugeordnet. Nachdem ich analog beide Seiten eingetragen habe, öffnen sich die Seiten.
Jedoch erfolgt die Darstellung falsch, es werden die Daten der obersten Ebene (Deutschlandseite) angezeigt und die der settings.php des jeweiligen Domainordners nicht gezogen.
Bislang läuft alles über eine Datenbank, sodass die settings.php-Dateien manuell gepflegt werden müssen. Die Seiten unterscheiden sich nach Darstellung (Views: ds_regions-Filter), wonach die Inhalte nach Zugehörigkeit anhand der Domain zusammengestellt werden. Der Filter selbst bzw. das Modul hat keine Einstellungsoberfläche.
Da kein Kontakt mehr zum vorherigen Programmierer besteht, hoffe ich auf eure Hilfe. Vermutlich fehlt mir eine Zuordnung, die ich nicht vornehmen kann. Bei der Suche in der Datenbank bin ich nirgends drauf gestoßen, wo noch eine Verbindung zu schaffen ist. Oder hätte ich nach dem einfügen noch einen Befehl eintragen sollen?
Vermute ich richtig, dass ds_regions ein selbst gebautes Modul ist?
Ich hoffe ihr könnt mir helfen. Danke schon mal.
- Anmelden oder Registrieren um Kommentare zu schreiben
Wenn es eine echte Multisite
am 22.09.2013 - 09:06 Uhr
Wenn es eine echte Multisite wäre, müßtetst Du zumindest unterschiedliche Präfixe in der Datenbank finden. Da das nicht der Fall zu sein scheint, ist es anders gelöst worden. Dann könnte es evtl. mit dem Modul [do:domain Domain Access] gemacht worden sein. Das habe ich aber selbst noch nicht verwendet und kann weiter nichts dazu sagen.
Beste Grüße
Werner
Hallo Werner, ja das hat mich
am 22.09.2013 - 12:54 Uhr
Hallo Werner, ja das hat mich auch irritiert. Es gibt keine Präfixe, nur ein Datenbank die für alle Seiten verwendet wird. Durch den ds_regions-Filter soll anhand der Domain erkannt werden, ob es sich um die übergeordnete Seite www.deutschland...de oder eine untergeordnete, bspw. www.bayern.de handelt.
Danke für den Tipp mit Domain Access, werd es mal damit versuchen.
Gruß
Bei Domain Access scheitere
am 22.09.2013 - 18:44 Uhr
Bei Domain Access scheitere ich schon nach der Installation, da dies einen White Screen verursacht...
Weiß jemand, wie/wo es sich
am 22.09.2013 - 20:01 Uhr
Weiß jemand, wie/wo es sich beeinflussen lässt, dass Drupal die settings.php der einzelnen Domains zieht oder nicht? Die Darstellung funktioniert inzwischen sowei, dass er die Abhängigkeit nach Region erkennt und nur die betreffenden Inhalte darstellt.
Allerdings lädt er dazu die Hauptdomain (default), bei Bearbeitungen switcht er die Adresse (z.B. www.muenchen.de -> www.deutschland.de). Die settings.php der untergeordneten Domains sind sauber.
Habe auch in den Skripten der Seite nichts gefunden, was darauf schließen lässt. Einzig eine Zuordnung der Unterdomains über eine Deutschlandgrafik in der page.tpl, dass dürfte sich aber m.E. nicht auf den korrekten Aufruf der Regionaldomains beziehen.
Kann es hier Probleme durch die Rewrite-Rules der .htaccess geben?
Wenn es keine Multisite ist
am 22.09.2013 - 20:45 Uhr
Wenn es keine Multisite ist und auch nicht mit Domain-Access gearbeitet wurde, solltest Du Dir mal die vorhandenen Module ansehen und wo die herkommen. Eigene Module findest Du leicht über die Aktualisierungsseite, da es dazu eben keine Aktualisierungsinfo gibt. Da müßtest Du dann mit Deiner Analyse tiefer (d.h. in den Code) einsteigen. Da kann man Dir auch nicht weiter helfen, da wir nicht wissen, wie der Aufbau der Seite realisiert ist. Hier rächt sich, daß auf Dokumentation bei der Übergabe einer Webseite selten Wert gelegt wird, da eine "ordentliche" Dokumentation zeitaufwendig und daher teuer ist. Geld, das Auftraggeber gerne sparen. Wie man in Deinem Falle sieht, geht es aber mitunter nicht ohne Dokumentation, denn was fehlt, mußt Du jetzt mindestens für Dich erstellen. Irgend wann muß der Aufwand dann betrieben und bezahlt werden.
Beste Grüße
Werner
Ja, das hast du wohl Recht.
am 22.09.2013 - 20:49 Uhr
Ja, das hast du wohl Recht. Danke trotzdem für deine Einschätzung. Ist eben schwierig bei nichtkommerziellen Projekten. Mal sehen, ob ich durchblicke. Momentan habe ich die Zuordnungen der Regionen über manuelle Eintragungen in der Datenbank gemacht, was mir allerdings missfällt, da ich bisher nicht ersehen konnte, wo das letzte Schritt - wenn die Regionalseite aufgerufen wird, dann zeige den Inhalt gefiltert (funktioniert) und lade die settings.php der Seite (funktioniert nicht) erfolgt...
Inhalte einer Seite für eine andere freigeben?
am 24.10.2013 - 21:57 Uhr
Hallo Werner,
ich hab gerade eine andere Überlegung: Ist es möglich, die Inhalte einer Seite auch für eine andere freizugeben, sodass ich bspw. per Views auch Inhalte einer anderen einbinden kann? Die Idee ist, Inhalte von Unterseiten auf einer übergeordneten zusammenzufassen.
Hast du (oder jemand anderes) dazu eine Idee? Domain Access erzeugt nach der Modulaktivierung einen WhiteScreen auf D 7.22 und 7.23, mit NodeAcess kann ich den Zugriff nicht bereitstellen.
Danke für die Hilfe!