phpBB.de - Die deutsche phpBB-Community
Stand: 30.12.2008 04:56
aktuelle Version auf phpBB.de
 
Apache At Work Communities Community Building Informationen und Hinweise Installation/Konfiguration/Update MySQL PHP phpBB-Optimierungen phpBB3 Rechtliches Server & Technik Snippets Templates und Mods
 



Knowledge Base Offline -> At Work -> Vorgehen bei Problemen mit der Anmeldung

Vorgehen bei Problemen mit der Anmeldung
Autor: PhilippK
Stand: 30.12.2008 04:56
Neuste Version unter: http://www.phpbb.de/doku/kb/login

Vorgehen bei Problemen mit der Anmeldung

Dieser Artikel beschreibt, was ihr machen könnt, wenn ihr euch bei eurem Board nicht anmelden könnt.
Diese Anleitung ist für phpBB 2. Einige Teile lassen sich allerdings bei phpBB 3 analog durchführen.

Wer es sich einfach machen will kann den phpBB Board-Doktor verwenden. Ein Script welches die Einstellungen überprüfen und korrigieren kann.
Um die Probleme zu verstehen lohnt es sich aber auf jeden Fall den nachfolgenden Artikel zu lesen.

Wenn ihr euch nicht anmelden könnt, ihr regelmäßig einen 404-Fehler erhaltet oder auf eine andere/falsche Seite umgeleitet werden, so gibt es meist zwei mögliche Ursachen dafür:
  • Ein Problem mit der Konfiguration des Installationspfades oder
  • Ein Problem bei der Cookie-Konfiguration
Wenn ihr euch nicht sicher seit, welches Problem vorliegt, so könnt ihr das relativ einfach feststellen: meldet euch ab (sofern ihr es noch nicht seit). Klickt dann einmal auf 'Einloggen, um private Nachrichten zu lesen'. Solltet ihr anschließend einen 404-Fehler erhalten, so liegt recht sicher ein Problem bei der Konfiguration des Installationspfades vor. Erscheint hingegen die Anmeldemaske, so ist ein Cookie-Problem wahrscheinlicher.


Problem mit der Konfiguration des Installationspfades

Hier habt ihr vermutlich im Administrationsbereich eine falsche Einstellung des Installationspfades vorgenommen. Der Pfad, in dem das Forum installiert ist, wird dabei in vier Teilen abgespeichert:
  1. Dem Protokoll: etwas getarnt unter der Einstellung 'Sicheres Cookie' wird festgelegt, ob das Standard-Protokoll (http://) oder das Protokoll für sichere Seiten (https://) verwendet werden soll. Da die meisten Installationen ohne SSL erfolgen sollten (also nicht auf einem sicheren Server), sollte hier i.d.R. 'Deaktiviert' die richtige Auswahl sein.
    Um die wesentlichen Parameter der Board-Konfiguration auszulesen, gibt es ein eigenes Tool
  2. Der Domain: diese wird unter 'Domainname' abgelegt und umfasst die komplette Domain incl. www. und anderen Subdomains. Aber ohne http://
  3. Dem Port des Servers: dieser wird unter 'Server Port' gespeichert. Meist ist hier der Standardwert 80 richtig. Nur wenn ihr beim aufrufen Euer Seite einen Port mitangeben müsst (z.B. http://www.domain.de:81) kommt hier ein anderer Wert rein.
    Der Port 3306 ist für die Datenbank und hier auf jeden Fall falsch.
  4. Dem Pfad: er wird unter 'Scriptpfad' angegeben und sollte mit einem Schrägstrich (Achtung: nicht den Backslash verwenden - richtig ist der, der sich auf der deutschen Tastatur auf der Taste '7' befindet.) beginnen und enden. Befindet sich das Forum direkt im Hauptverzeichnis, so ist nur ein Schrägstrich anzugeben.
Zwei Beispiele:
Erreicht ihr euer Forum über
Zitat:
http://www.domain.de/ordner/index.php
so sind folgende Einstellungen richtig:
Zitat:
Sicheres Cookie: deaktiviert
Domainname: www.domain.de
Server Port: 80
Scriptpfad: /ordner/

Erreicht ihr euer Forum über
Zitat:
https://www.domain.de:8080/index.php
so sind folgende Einstellungen richtig:
Zitat:
Sicheres Cookie: aktiviert
Domainname: www.domain.de
Server Port: 8080
Scriptpfad: /

Abhilfe schaffen:
Abhilfe könnt ihr auf verschiedene Weise schaffen:
  • Über ein manuelles Ändern der URL (geht nicht immer): dazu ruft ihr direkt die login.php in eurem Forum auf (also wenn euer Forum unter http://www.domain.de/ordner/ liegt, ruft ihr http://www.domain.de/ordner/login.php auf). Nun solltet ihr die Anmeldemaske sehen und könnt euch dort anmelden. Nach dem Absenden des Formulars erhaltet ihr wieder einen 404-Fehler. In der Adresszeile sollte nun jedoch eine URL stehen, die ungefähr mit
    Zitat:
    ?sid=0123456789abcdef0123456789abcdef
    endet. Diesen Teil (beginnend ab dem Fragezeichen) kopiert ihr aus der Adresszeile eures Browsers und hängt ihn an die Adresse an, über die ihr das Forum aufruft. Das sollte ungefähr so aussehen:
    Zitat:
    http://www.domain.de/ordner/?sid=0123456789abcdef0123456789abcdef
    Wenn ihr nun diese modifizierte Adresse aufruft, so solltet ihr angemeldet sein und könnt dann im Admin-Bereich unter 'Allgemeines'-'Konfiguration' die oben beschriebenen Werte überprüfen und ggf. ändern.
  • Über einen Mod: Der DB Maintenance Mod beinhaltet auch eine Notfallkonsole (erc.php), mit der ihr die Angaben bequem über eine grafische Oberfläche ändern könnt.
  • Direkt über phpMyAdmin: Dazu geht ihr in phpMyAdmin in die Tabelle phpbb_config (wenn ihr einen anderen Präfix genommen habt, fängt der Tabellenname ggf. anders an). In dieser Tabelle geht ihr dann auf die Registerkarte 'Teilw. anzeigen' bzw. 'Suchen' (je nach phpMyAdmin-Version unterschiedlich). Gebt dann unter 'config_name' einen der folgenden Namen ein (abhängig davon, welchen Teil ihr anpassen wollt). Wer sich die ganze Tabelle anzeigen lässt, solte bedenken, dass einige Werte dann auf Seite 2 oder 3 stehen.
    Zitat:
    cookie_secure für das Protokoll
    server_name für die Domain
    server_port für den Port des Servers
    script_path für den Pfad
    Nach dem Absender der Maske solltet ihr einen Datensatz angezeigt bekommen, den ihr nun entsprechend ändern könnt (bitte nur die Angabe unter config_value ändern). (Hinweis: beim Protokoll tragt bitte eine 1 ein, wenn euer Server SSL verwendet (https), ansonsten 0.)
  • Durch eine Code-Änderung: wenn alle Stricke reißen, so könnt ihr auch eine Änderung am Code (s.u.) vornehmen.


Problem mit der Cookie-Konfiguration

Diese Informationen findet ihr derzeit noch unter http://www.phpbb.de/doku/kb/artikel.php?artikel=22


Codeänderung bei massiven Problemen mit der Konfiguration des Installationspfades

Sollten alle oben beschriebenen Mittel keine Abhilfe geschaffen haben, so besteht noch die Möglichkeit, den Code in der Datei ./includes/functions.php zu ändern. Dies ist aber nur dann zu empfehlen, wenn wirklich kein anderer Weg zum gewünschten Erfolg führt.
Öffnet dazu die functions.php und ersetzt dort
Code:
   $url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
durch
Code:
   // $url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
und
Code:
   header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
durch
Code:
   // header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
   header('Location: ' . $url);



Knowledge Base Offline -> At Work -> Vorgehen bei Problemen mit der Anmeldung