[TYPO3-UG Dutch] Probleem met BE en FE login
Jigal van Hemert
jigal at xs4all.nl
Sun Apr 5 08:39:40 CEST 2009
Op de TYPO3-dev lijst schreef Volker Biberger een stuk over het oplossen
van login problemen. Hieronder een Nederlandse vertaling.
------------------------
Tijdens T3BOARD09 had ik de kans om met Ingmar te praten over het
probleem waarbij gebruikers steeds uit TYPO3 gelogd worden.
In dit bericht zal ik de problemen beschrijven die we hadden en hoe we
ze gedebugd hebben.
Hoofdstuk een: Het mysterieuze probleem
We hebben twee websites op verschillende TYPO3 installaties:
www.ourdomain.de T3 4.1.9
subdomain.ourdomain.de T3 4.2.6 (schoon)
Het probleem was dat mensen soms uit de backend gegooid werden. Als ze
hun cookies verwijderde werkte het een tijdje (misschien een dag,
misschien maar een uur).
Het Cookie-Domein instellen en de IP-lock uitschakelen losten het
probleem niet op.
NB: Als de backend gebruiker in een groot bedrijf zit of een grote
overheidsinstantie dan kan het gebeuren dat zijn IP adres verandert
tijdens een sessie en hij daarom eruit gegooid wordt. Hoewel de
symptomen hierop lijken is de oplossing de instellingen voor IP-locking
(TYPO3 -> Install tool -> Alle instellingen). Verwar dit niet met ons
probleem.
Hoofdstuk twee: De reden waarom je eruit gegooid wordt
Ingmar legde uit dat TYPO3 gebruikers eruit gooit als het domein van een
cookie dat de browser aflevert verschilt van het domein dat TYPO3
verwacht. In ons geval stuurde de browser een cookie met het domein:
".ourdomain.de" terwijl het "www.ourdomain.de" zou moeten zijn. Om dit
te controleren bekijk je de cookies in je browser. Waarschijnlijk vind
je TWEE cookies, een correct en een verkeerde. Afhankelijk van de
browser wordt het verkeerde cookie verstuurd. Dit kan zelf afhangen van
welk cookie het eerst geschreven is, vandaar het sporadisch optreden van
het probleem.
Op dit moment zou je uitgerust moeten zijn met Firefox en de addons
Firebug en Firecookie.
Als je kunt reproduceren dat je niet in kunt loggen, probeer het cookie
te verwijderen dat ".ourdomain.de" als domein heeft. Daarna moet het
inloggen weer lukken.
Hoofdstuk drie: Waarom komt het cookie vandaan?
Waarom komt het foute cookie in de browser terecht? Daarvoor hebben de
Firefox addon Live HTTP headers nodig. Deze extensie laat precies zien
welke cookies verstuurd en ontvangen worden als we de website bezoeken.
In ons scenario gooide ik alle cookies weg, bezocht www.ourdomain.de
(NIET de TYPO3 login!) en kreeg twee cookies. Een met het verkeerde
.ourdomain.de. MAAR de Live HTTP headers lieten zien dat het cookie niet
door de betreffende server geschreven was. Hoe kon dat? De reden was dat
het cookie op de PC zelf geschreven was door een oud stuk JavaScript
(efa fontsize deed dat bijvoorbeeld vroeger). JavaScript uitschakelen
toonde aan dat het cookie niet meer werd weggeschreven (natuurlijk eerst
cookies verwijderen).
Hoofdstuk vier: Oplossing?
De oplossing van dit probleem hangt af van waar het foute cookie vandaan
komt. Wat me lange tijd op het verkeerde been zette was het feit dat
beide installaties last leken te hebben van hetzelfde probleem. Ondanks
dat subdomain.ourdomain.de een schone installatie was met maar een
beetje extra. Dit was natuurlijk niet het geval want het kapotte stuk JS
op www.ourdomain.de maakte de andere installatie ook kapot (net als dat
het geval zou zijn geweest met elke andere installatie on hetzelfde domein).
Ik hoop dat dit bericht een manier aangeeft waarop je dit complexe
probleem kunt debuggen. Ik zou graag reacties krijgen over hoe dit
bericht je geholpen heeft en hoe je uiteindelijk het probleem opgelost
hebt. In mijn geval heb ik ouderwetse JS functies uitgeschakeld,
aangezien die toch niet meer nodig waren.
Met dank aan Ingmar voor de ondersteuning hierbij.
------------------------------------------------
Hopelijk helpt dit?
NB: "ik" in de tekst slaat natuurlijk op Volker :-)
--
Jigal van Hemert.
More information about the TYPO3-UG-dutch
mailing list