Beiträge: 10
Themen: 4
Registriert seit: 31.03.2011
MyBB-Version: 1.6.2
31.03.2011, 20:34
(Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011, 21:48 von StefanT.)
Hi,
nachdem myBB 1.6.1 vor ein paar Wochen meine persönliche Evaluierung für ein neues Forensystem nicht bestanden hatte, weil ich mich in meiner Testinstallion nicht anmelden konnte, habe ich vor ein paar Tagen es nochmals mit der V1.6.2 versucht und bin wieder auf das alte "Cookie-Problem" gestossen...
Leider haben alle Artikel und Forenbeiträge zu diesem Thema nicht bei mir funktioniert (W7U64 mit XAMPP 1.7.3) und nach ein wenig "reverse engineering" habe ich einen Workaround für mich gefunden der funktioniert (mein Server kommt mit dem Cookie per PHP header() nicht klar).
Vielleicht kann ja jemand etwas damit anfangen oder hat das gleiche Problem zu lösen:
in:
Zitat:/inc/functions.php
Zitat:function my_setcookie($name, $value="", $expires="", $httponly=false)
suche:
ersetze mit:
PHP-Code:
$trycookie = header($cookie, false);
if ($trycookie != true)
{
setcookie($mybb->settings['cookieprefix'] . $name, urlencode($value));
}
Bitte diesen Workaround NICHT für produktive Foren benutzen!
Für ein lokales Test- oder Entwicklungsforum ist es Ok...
(Feedback hier im Thema willkommen)
Gruß
Underhill
Weitere Keywords: 5.3.1 apache 2.2.14 localhost port session login anmeldung passwort
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Bist du sicher, dass die Cookie-Daten gestimmt haben? Denn das ist das einzige, was dein Code nicht übergibt. Sonst kommt eigentlich genau das Gleiche raus.
Siehe auch:
https://www.mybb.de/forum/thread-18082.html
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 10
Themen: 4
Registriert seit: 31.03.2011
MyBB-Version: 1.6.2
Hallo,
(31.03.2011, 20:35)StefanT schrieb: Da kommt intern genau das gleiche heraus, ich habe keine Ahnung, was das bringen soll.
Ist mir schon klar:
http://www.hacksparrow.com/php-setcookie...ution.html schrieb:setcookie() is a wrapper function to header(‘Set-Cookie:’)
Es 'bringt' das es bei mir funktioniert... Entweder weil ich die Domain, den Pfad und das httponly Flag weglasse oder weil header() bei mir noch anderen Müll mitsendet den ich nicht erkennen kann...
(31.03.2011, 20:35)StefanT schrieb: Warum soll es bei dir nicht, wie bei allen anderen, ohne Code-Änderungen geben?
Weil ich mir sicher bin das ich die die FAQ gelesen, verstanden und befolgt habe:
für
Zitat:http://rechnername:8800/
sollte
Zitat:Cookie-Domain: .rechername
Cookie-Pfad: /
passen (in 'inc/settings.php' und ACP/Tabelle 'mySQL ')
Gruß
Underhill
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
Was machst du denn? Ich habe vor fast 10 Minuten eine ganz andere Antwort gegeben (die andere war etwas unpräzise).
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
Hallo und willkommen!
(31.03.2011, 21:19)Underhill schrieb: Zitat:http://rechnername:8800/
Die Cookie-Einstellungen benötigen eine richtige Domain, damit es funktioniert. Lokal ist das eine andere Sache, da du hier i.d.R. keine Top-Level-Domain hast. Du kannst in diesem Fall die Einstellung zur Cookie-Domain leer lassen, dann funktioniert es auch.
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 10
Themen: 4
Registriert seit: 31.03.2011
MyBB-Version: 1.6.2
31.03.2011, 21:33
(Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011, 21:45 von Underhill.)
(31.03.2011, 21:22)StefanT schrieb: Was machst du denn? Ich habe vor fast 10 Minuten eine ganz andere Antwort gegeben (die andere war etwas unpräzise).
Auf "Antworten" klicken, zwei Sätze schreiben und dann 15' von der Frau zugetextet werden
@Stefan und Michael:
Ohne Domain hatte ich es nicht probiert...
Das teste ich jetzt gleich mal (Frau ist im Bett)
Danke und Gruß
Underhill
EDIT: Passt! Ohne Domain ist alles gut.. 1000 Dank... Damit ist mein Workaround obsolet kann in den Müll
Aber wäre es nicht sinnvoll wenn myBB die Cookiedomain beim install nicht dirket rauswirft wenn es ein localhost ist? Oder ihr diese Fälle im FAQ aufnimmt? Nochmals Danke und Gruß
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
(31.03.2011, 21:33)Underhill schrieb: Aber wäre es nicht sinnvoll wenn myBB die Cookiedomain beim install nicht dirket rauswirft wenn es ein localhost ist? Oder ihr diese Fälle im FAQ aufnimmt? Nochmals Danke und Gruß
Das ist ein relativ spezieller Fall, aber ich werde es auf jeden Fall weitergeben. Für die FAQ ist aber Michael verantwortlich.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 10
Themen: 4
Registriert seit: 31.03.2011
MyBB-Version: 1.6.2
Hi,
habe die Stelle auch schon gefunden:
install.php:
PHP-Code:
if($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['SERVER_NAME'] == 'localhost')
{
$cookiedomain = '';
}
if($_SERVER['SERVER_PORT'] && $_SERVER['SERVER_PORT'] != 80 && !preg_match("#:[0-9]#i", $hostname))
{
$hostname .= ':'.$_SERVER['SERVER_PORT'];
}
bei mir ist:
HTTP_HOST = 'rechnername:8800'
SERVER_NAME = 'rechnername'
SERVER_PORT = '8800'
Klar das $cookiedomain nicht geleert wird
Imho fehlen da
Fall1: Rechnername != 'localhost' aber ohne TLD
und Fall2: Rechnername mit Port != 'localhost' aber ohne TLD
Ich mache morgen mal einen Vorschlag...
Gruß
Underhill
Beiträge: 25.762
Themen: 269
Registriert seit: 20.09.2005
31.03.2011, 22:05
(Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2011, 22:08 von StefanT.)
Brauchst du nicht, man könnte einfach prüfen, wie viele Punkte enthalten sind. (Siehe der im anderen Thema verlinkten Spezifikation.) Auch IP-Adressen sind glaube ich nicht abgedeckt.
EDIT: Da gibt es sogar schon ein Ticket, da passt das dazu:
http://dev.mybb.com/issues/1438
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.