[gelöst] WSOD nach Erstellung der Datenbanktabellen
am 27.08.2012 - 06:46 Uhr in
Edit: Ich hab die Versionsnummern rausgenommen, da die hier eher unwichtig sind.
Hallo,
ich wollte Drupal eigentlich einfach nur mal testen (und dazu gehört auch die Installation usw.), aber irgendwie will es bei der Installation nach der Erstellung der Datenbanktabellen nicht mehr weitergehen. Normalerweise könnte man jetzt sagen, ach was solls, gibt noch andere CMS, aber irgendwie habe ich das Gefühl, dass ich einfach nur eine Kleinigkeit übersehen habe... Ich habe mich quasi festgebisssen... :(
System usw.:
- Ubuntu ***
- Drupal *** mit deutschem Sprachpaket
- Apache mit Php *** und mod_chroot
- Postgresql ***
- Installation auf/mit Subdomain: yy.domainname.de
Genauere Fehlerbeschreibung:
Nach dem Erstellen der Datenbanktabellen lädt die Seite neu und bleibt leer. Eine Fehlermeldung erhalte ich nicht. Lediglich das Postgreslog enthält eine Fehlermeldung:
2012-08-27 05:19:44 CEST LOG: could not accept SSL connection: EOF detected
2012-08-27 05:19:44 CEST ERROR: relation "variable" does not exist at character 19
2012-08-27 05:19:44 CEST STATEMENT: SELECT value FROM variable WHERE name = 'install_task'
2012-08-27 05:19:47 CEST WARNING: nonstandard use of \\ in a string literal at character 38
2012-08-27 05:19:47 CEST HINT: Use the escape string syntax for backslashes, e.g., E'\\'.
2012-08-27 05:19:47 CEST WARNING: nonstandard use of \\ in a string literal at character 38
2012-08-27 05:19:47 CEST HINT: Use the escape string syntax for backslashes, e.g., E'\\'.Das fehlende SSL kann eigentlich nicht das Problem sein. Beim Googeln habe ich herausgefunden, dass es funktionierende Drupalinstallationen in Verbindung mit Postgres gibt, weshalb mir der SQL-Fehler seltsam vorkommt zumal die Tabelle "variable" existiert. Irgendwie zweifle ich daran, dass dieser Fehler hier das Problem ist.
Google findet zu dem Ganzen nichts mehr, das mir weiterhilft. Hat von euch einer eine Idee, was ich übersehen haben könnte?
Hier mal was ich versucht habe:
- Der Apache hat vollen Zugriff auf alle Drupaldateien (beim Testen ob es Rechteprobleme sind, habe ich sogar den Apache zum Owner gemacht)
- Das Apache-Log ist sauber (wenn man von den Bots absieht, die nicht mehr finden, was dort mal war)
- Das PHP-Logging ist aktiviert und beschwert sich darüber, dass ich versuche pdo und pdo_pgsql zweimal einzubinden
- Das PHP-Memory Limit steht auf 128 MB
- Die settings.php und die default.settings.php sind vorhanden
- Eine andere .htaccess außer der von Drupal existiert nicht
- Anmelden oder Registrieren um Kommentare zu schreiben

Drupal mit PostgreSQL installieren
am 27.08.2012 - 15:10 Uhr
Vielleicht helfen dir die folgenden Infos:
Erstmal danke für die Links.
am 28.08.2012 - 03:33 Uhr
Erstmal danke für die Links. Die im ersten Link verwendeten Dateien habe ich bei mir jetzt nicht gefunden, aber an eine manuelle Installation des Datenbankschemas hatte ich in der Tat nicht mehr gedacht. (Wenn denn überhaupt dort der Fehler zu finden ist, denn die Tabellen werden während der Ausführung der install.php ja erstellt.)
Der zweite Link beweist wieder, dass es mit Postgres geht. Na dann mal schaun, ob ich noch irgendwo den Fehler finde.
Fehlerquelle gefunden?
am 30.08.2012 - 04:01 Uhr
Ich habe gerade das Ganze mit MySQL versucht. Zunächst ging dort auch alles.
Dann habe ich den Apache in den Chroot gesteckt und damit den selben Fehler provoziert. Ist also wohl nicht Drupal das Problem, sondern ich habe irgendwo unsauber gearbeitet. Das sollte sich jetzt aber recht schnell finden lassen. Mit Fehlermeldung im Apache-Log wäre es aber um einiges einfacher gewesen. *rolleyes*
Jetzt muss erst Mal MySQL wieder runter...
Deneva_Saavik schrieb Ich
am 30.08.2012 - 06:58 Uhr
Ich habe gerade das Ganze mit MySQL versucht. Zunächst ging dort auch alles.
Dann habe ich den Apache in den Chroot gesteckt und damit den selben Fehler provoziert. Ist also wohl nicht Drupal das Problem, sondern ich habe irgendwo unsauber gearbeitet. Das sollte sich jetzt aber recht schnell finden lassen. Mit Fehlermeldung im Apache-Log wäre es aber um einiges einfacher gewesen. *rolleyes*
Jetzt muss erst Mal MySQL wieder runter...
Wenn der Fehler beim Apache liegt - bzw. bei aktivierte chroot-Modul kann es auch gut sein, dass du hier dann Rechteprobleme bei den Verzeichnissen bekommst - sprich die DB kann nicht mehr geschrieben / geändert werden wg. der Restriktionen durch chroot.
Dieser Blogpost beschreibt, was du dagegen tun könntest:
http://www.planetknauer.net/blog/archives/2009-02-Apache-mit-voll-funkti...
SteffenR
Lösung
am 10.09.2012 - 13:21 Uhr
Der Thread ist jetzt zwar schon ein paar Tage alt, aber ich mag es nicht bei der Problemsuche auf Threads ohne Lösung zu stoßen und deshalb hänge ich hier noch an, was bei mir die Lösung war. (Zumal ich keine brauchbaren Fehlermeldungen erhalten hatte.)
http://www.planetknauer.net/blog/archives/2009-02-Apache-mit-voll-funkti...
Diesen Link hatte ich zufällig auch zum Chrooten verwendet. Aber ich habe die Kommentare nicht durchgelesen und deshalb den Fehler nicht gefunden. Die /usr/share/zoneinfo hat bei mir gefehlt. Und dieses Verzeichnis in den Chroot zu kopieren hat dann auch das Problem gelöst.
Hierauf bin ich am Rande zufällig gestoßen:
Seit dem Apache 2.2.10 hat dieser eine eingebaute Chrootfunktion, die per ChrootDir in der Apache- Konfiguration aktiviert wird. Wenn man jetzt zusätzlich mod_chroot verwendet (das ebenfalls die ChrootDir haben will) versucht der Apache wohl alles doppelt zu chrooten. Er findet das ChrootVerzeichnis nicht und man müsste ChrootDir/ChrootDir/ erstellen. Viele lösen es hier per bind, aber ich hab jetzt einfach mod_chroot rausgeworfen und verwende die Apache-Lösung.
Zu Postgres:
Die Postgres-Warnungen bei der Installation sind nicht verschwunden, aber führen auf den ersten Blick nicht zu Problemen.