Probleme mit Instllation bei 1und1
Hallo Alle,
nun habe ich meine erste Website mit Contao 2.9.1, lokal unter Win7 perfekt zum Laufen gebracht, habe sogar ein eigenes Modul & InhaltsElement erstellt und alles ist prima!
Jetzt habe ich alles auf den 1un1 Webspace hochgeladen (und mich dabei an den entsprechenden postings im Forum gehalten). Klappt soweit!
Nur wenn ich nun mein Modul & InhaltsElement in das /modules verzeichnis hochkopiere und ich dann versuche mich ins Backend einzuloggen, erhalte ich immer Fehler wie diese:
Code:
Warning: Cannot modify header information - headers already sent by
(output started at /homepages/25/d349048345/htdocs/system/modules/projektSeite/config/config.php:38)
in /homepages/25/d349048345/htdocs/system/libraries/System.php on line 520
#0 [internal function]: __error(2, 'Cannot modify h...', '/homepages/25/d...', 520, Array)
#1 /homepages/25/d349048345/htdocs/system/libraries/System.php(520): setcookie('BE_USER_AUTH', '154347f307efe9c...', 1291071135, '/', '', false)
#2 /homepages/25/d349048345/htdocs/system/libraries/User.php(365): System->setCookie('BE_USER_AUTH', '154347f307efe9c...', 1291071135, '')
#3 /homepages/25/d349048345/htdocs/system/libraries/User.php(286): User->generateSession()
#4 /homepages/25/d349048345/htdocs/contao/index.php(65): User->login()
#5 /homepages/25/d349048345/htdocs/contao/index.php(145): Index->__construct()
#6 {main}
Warning: Cannot modify header information - headers already sent by
(output started at /homepages/25/d349048345/htdocs/system/modules/projektSeite/config/config.php:38)
in /homepages/25/d349048345/htdocs/system/libraries/Template.php on line 186
#0 [internal function]: __error(2, 'Cannot modify h...', '/homepages/25/d...', 186, Array)
#1 /homepages/25/d349048345/htdocs/system/libraries/Template.php(186): header('Content-Type: t...')
#2 /homepages/25/d349048345/htdocs/system/modules/backend/BackendTemplate.php(142): Template->output()
#3 /homepages/25/d349048345/htdocs/contao/index.php(137): BackendTemplate->output()
#4 /homepages/25/d349048345/htdocs/contao/index.php(146): Index->run()
#5 {main}
Ich bin total ratlos....
Was besagen diese Fehler?
Irgendetwas in der config-php meines "projektSeite" Moduls schmeckt ihm nicht.
Aber was?
Kann mir jemand bei der Fehlersuche helfen?
Tasusend dank im Voraus.
Ich weiiss nicht mehr weiter...
Gruss,
Karl
Lösung: "Warning: Cannot modify header information - headers already sent by..."
Zusammenfassung:
Beim Upload von files in ein Contao-System ist darauf zu achten, dass diese Files als "UTF-8 Without BOM" (Byte Order Mark) encodiert sind.
Das BOM sind die zwei ersten Bytes im File und sagen in 'echten' Unicode-encodierten Files (UTF-16) aus, wie die 2-Bytes UTF character 'physikalisch' abgelegt sind.
Wenn nun der PHP-Knecht dieses file einliest und sieht, dass dieses file nicht "UTF-8 ohne BOM" ist, dann interpretiert er das file falsch.
Details:
Z.B. ist ein 'ä' in UTF-8 als Byte 0xE4 abgelegt - also nur 1 Byte, in "UTF-16 Little Endian" aber als 0xE400. Dies wird durch ein BOM von "0xFEFF" markiert.
Eigentlich müsste es 0x00E4 sein, aber Little Endian beasgt, dass das "Least Significant Byte" zuerst im Speicher abgelegt ist.
Dies ist abhängig vom Prozessor, wie dieser in seinen Register (also im Proc selbst) Bytes abspeichert und Intel-CPUs sind traditionell "LE".
Weitere Beobachtung:
Zudem, sollte man lieber am Anfang & Ende des Files, also vor dem '<?php'-Tag & nach dem PHP End-Tag '?>' lieber keine Leerzeilen drin haben ("0x0D0A" Sequenzen). Dies scheint den PHP-Knecht auch zu verwirren.
Ist diese Beobachtung korrekt?
Erleicherte Grüsse an die ConTao-isten,
- Karl