
TYPO3 Version 4.5.x LTS
Anleitung
zur
Website Einrichtung
Dokument Version 1.2
Letzte Änderung von RealPowerWork am 30.04.2012
Copyright © 2012 by RealPowerWork
Inhaltsverzeichnis
2.1 Website Definitionen festlegen
2.4.1 HTML Vorlagedatei als TYPO3 HTML Vorlage verwenden
2.5 Struktur der Website festlegen
2.6 Funktionen der Website festlegen
3 Grundlagen TYPO3 HTML Templates
3.1 Manuelle Erstellung des HTML Templates
Einbindungsmöglichkeiten von HTML Dateien als TYPO3 HTML Template
3.2 Webseiten Höhe festlegen im MS Internet Explorer
3.3 CSS Hover funktioniert nicht im MS Internet Explorer
3.4 Boxmodelhack für Microsoft Internet Explorer
4 Vorbereitung Linux System für TYPO3
4.1 Installation von Apache, PHP und MySQL
4.2 Apache und MySQL Serverdienste starten
4.2.1 Apache (PHP) Serverdienst manuell starten
4.2.2 Apache (PHP) Serverdienst automatisch starten
4.2.3 PHP5 Version auf 5.3.8 Updaten unter SLES 11
4.2.4 MySQL Serverdienst manuell starten
4.2.5 MySQL Serverdienst automatisch starten
4.3 Zusätzliche PHP Module installieren
4.3.1 Installation von PHP Modulen „gd“, „mysql“, „zlib“ und „curl“
4.4 SLES11 Firewall Konfigurieren
5.1 Installation von TYPO3 auf Linux SLES11 Servern
5.2 Verzeichnisrechte für TYPO3 unter Linux vergeben
5.3 Dateilinks auf das TYPO3 Source Paket setzen
5.4 MySQL Datenbank kontrollieren
5.4.1 Passwort für den MySQL Admin (root) vergeben
5.4.2 Kontrolle der Datenbank-Engines auf dem Server
5.4.2.1 Anzeige der Engines unter “phpMyAdmin”
5.4.3 Kontrollieren Sie den eingestellten Zeichensatz des MySQL Servers
5.4.3.1 Umstellung des MySQL Servers Standard Zeichensatzes auf „utf-8“
5.4.3.2 Anzeige der Koallation (Collation) unter „phpMyAdmin“
5.4.4 Manuelle Erstellung einer TYPO3 Datenbank mit „utf-8“
5.4.5 Konvertierung einer vorhanden Datenbank in „utf-8“
5.4.6 Ausgabe im Frontend in UTF-8 erzwingen
5.4.7 Datenbankreparatur ausführen
5.4.8 Fehler bei MySQL Server oder Datenbanken
5.4.8.1 Fehler beim Ausführen der Datei „db_utf8_fix.php“ kommt nur „Access denied“
5.4.8.2 Fehler bei Login auf MySQL Server
5.4.8.3 Kontrollieren Sie den verwendeten Sortierung (Collation) der Tabellen
5.4.8.4 Fehler nach Rücksicherung der Datenbank werden Sonderzeichen nicht angezeigt
5.4.8.5 Fehler nach Umstellung von „InnoDB“ aus „MyISAM“ kommt bei „COMPARE“ immer ein Engine Fehler
5.4.8.6 Fehler bei „COMPARE“ kommt immer Fehler mit „ENGINE=“ (nichts)
5.5.1 Erhöhung vom Speicherlimit ohne Zugriff auf „php.ini“
5.6 TYPO3 Install Tool das erste Mal starten
5.6.1 Schritte 1-2-3 im TYPO3 Install Tool
5.6.2 „Configure TYPO3“ im Install Tool
5.6.3 TYPO3 Install Tool später nochmals starten
5.6.4 Fehler im TYPO3 Install Tool
5.6.4.1 Fehler „Zugriff verweigert“ beim Aufruf vom „TYPO3 Install Tool“
5.6.4.2 Fehler „TYPO3 Install Tool“ lässt sich nicht starten
5.6.4.3 Fehler „TYPO3 Install Tool“ mit „The following PHP module(s) is/are missing…“
5.6.4.5 Fehler nach „TYPO3 Install Tool“ auf der http://localhots/cms Website
5.6.4.6 Fehler nach „TYPO3 Install Tool“ auf der TYPO3 Website über Hostnamen
6.1 Ablauf einer TYPO3 Update Installation
6.2 Update der TYPO3 MySQL Datenbank
6.2.1.1 Umstellung vom Zeichensatz von <latin1> auf <utf8>
6.3 Update der TYPO3 Source Dateien auf V4.5.x
6.4 Möglich Fehler bei Update Installation
6.4.1.1 Fehler „localconf.php is not found!”
6.4.1.2 Fehler beim Starten des TYPO3 Install Tool kommt eine leere (weiße)Seite
6.4.1.3 Fehler „Oops, an error oocured! The page is not configured! [type= 0][]“
6.4.1.4 Fehler TYPO3 V4.5.x beim Aufruf vom TYPO3 Install Tool nur leere (weiße) Seite
4.1.1.1 Fehler „The Install Tool is locked.“ beim Starten des TYPO3 Install Tool
6.4.1.5 Fehler der Login mit dem TYPO3 Install Tool Kennwort geht nicht
6.4.1.6 Fehler beim Login in das TYPO3 Backend
6.4.1.7 Fehler bei Tabellen sind verschiedene Collation eingestellt
6.4.1.8 Fehler beim normale Website kommt eine leere (weiße) Seite
6.4.1.9 Fehler auf neuer TYPO3 Website kommt „Please proceed to the Update Wizard“
6.4.1.10 Fehler auf Website „The requested page didn`t have proper…the tree-root!”
6.4.1.11 Fehler in der umgestellte Website wir eine graue Box angezeigt
6.4.1.12 Fehler in der Media Auswahl (DAM) für Bilder wird nichts angezeigt
6.4.1.13 Fehler auf Website werden Banner Bilder nicht angezeigt
6.4.1.15 Fehler „TYPO3 requires PHP 5.3.0 or higher“ erhalten Sie unter TYPO3 4.6.x
7 Zusätzliche neue TYPO3 Instanz erstellen
7.1 Installation einer zusätzlichen TYPO3 Instanz
7.2 Neuen virtuellen Webserver in Apache erstellen
7.2.1.1 Fehler beim Starten vom Apache Server „NameVirtualHost …. has no VirtualHosts“
7.2.1.2 Fehler beim Starten vom Apache Server „mixed * and non-* …not supported“
7.2.1.3 Fehler beim starten Apache Server “[error] (EIA2)Name or service not know”
8 Grafikfunktion von TYPO3 einrichten
8.1.1 Kontrolle ob GDLib installiert ist
8.1.1.1 Fehler: „GDLib using PNG“ unter „All Configuration“ nicht aktiviert
8.2 Installation von GraphicsMagick
8.2.1 Testen von „Delegate“ in GraphicsMagick
8.2.1.1 Prüfen von „Delegate“ in einem Terminalfenster
8.2.1.2 Prüfen von „Delegate“ mit einem PHP Script
8.2.1.3 Prüfen von „Delegate“ mit PHP Script im TYPO3 Verzeichnis
8.2.1.4 Prüfen von „Delegate“ mit dem TYPO3 Install Tool
8.2.2 Fehler Install GraphicsMagick
8.2.2.1 Fehler beim „./configure“ kommt „C compiler cannot create executables“
8.2.2.2 Fehler beim „./configure“ werden in der „Delegate Configuration“ immer „no“ angezeigt
8.2.2.3 Fehler beim „make“ kommt „’strcpy’ was not declared in this scope“
8.2.2.4 Fehler „/usr/local/bin/gm identify:Request did not return an image.”
8.2.2.5 Fehler „Unable to access configuration file (delegates.mgk) [No such file or directory]“
8.2.2.6 Fehler bei RPM Installation von GraphicsMagic 1.3.12 „warning:…“
8.3 Installation von ImageMagick
8.3.1.1 Fehler keine Grafiken unter ImageMagick Installation
8.4 TYPO3 Graphiktests durchführen
8.4.1 Testen der Grafiken unter GraphicsMagick
8.4.2 Testen der Grafiken unter ImageMagick
8.5 Fehler bei den Graphiktests
8.5.1.1 Fehler „No ImageMagick installation available“ unter „Basic Configuration“
8.5.1.2 Fehler „Test skipped“ erscheint bei allen „Image Processing“ Tests
8.5.1.3 Fehler bei den „Image processing“ Tests kommen nur Sonderzeichen
8.5.1.4 Fehler für PNG Grafiken werden im Backend keine Thumbnails angezeigt
8.5.1.5 Fehler die Schrift TrueType Test geht über die Farbfläche hinaus
8.5.1.7 Fehler „Read PNG“ beim Test „Reading image formats“
8.5.1.8 Fehler „Read TIF“ beim Test „Reading image formats“ mit GraphicsMagick
8.5.1.9 Fehler „Read PCX“ beim Test „Reading image formats“
8.5.1.10 Fehler „Read TGA“ beim Test „Reading image formats“
8.5.1.11 Fehler „Read PDF“ und „Read AI“ beim Test „Reading image formats“
8.5.1.12 Fehler mit „Write GIF“ beim „Writing GIF and PNG“ Test
8.5.1.13 Fehler mit „Write PNG“ beim „Writing GIF and PNG“ Test
8.5.1.14 Fehler mit „PNG to PNG“ beim „Scaling Image“ unter GraphicsMagick
8.5.1.15 Fehler mit „GIF to JPG“ beim „Scaling Image“.
8.5.1.16 Fehler „Combining using a GIF mask“ unter ImageMagick
8.5.1.17 Fehler „niceText“ mit TrueType oder „niceText“ mit Schatten
8.5.1.18 Fehler „File size very different from reference“ “ bei TrueType Font „niceText“
8.5.1.19 Fehler „File size very different from reference“ bei „niceText“ mit Shadow
9 TYPO3 Installation Anpassung
9.1 Passwortsicherheit erhöhen („saltedpassword“)
9.1.1 Installation von „saltedpassword“
9.1.1.1 Fehler im Backend nach aktivierung von „rsaauth“
9.1.1.2 Fehler bei Aktivierung von „saltedpassword“ kommt „SaltedPassword will not work until…“
9.2 Ein „favicon.ico“ für die Website festlegen
9.3 Überprüfung Indexe nach Update
9.3.1.1 Fehler bei „Admin Tools“ – „DB Überprüfung“ – „Update now“
9.4.1.1 Fehler bei „sendmail“ mit PHP „SafeMode = on“.
9.4.1.2 Fehler bei „sendmail“ auf einem lokalen Linux Server
9.5.2 PHP-Speicherlimit erweitern
9.5.3 PHP Upload Limit erweitern
9.5.3.1 Fehler „No file upload! Probaly the file was to large for PHP#s internal limit…“
9.6 FTP Zugang für TYPO3 und vsFTP einrichten
9.6.1 vsFTP Server unter SLES 11 Installieren
9.6.2 FTP Zugang für TYPO3 mit vsFTP einrichten
10 Erstellung der Website in TYPO3
10.1 Einloggen in das TYPO3 Backend (BE)
10.2.1 Anpassungen wenn TYPO3 Install Tool verfügbar
10.2.2 Anpassungen direkt in der “localconf.php”
10.2.3 Extension Manager Settings
10.2.4 Extension Manager Liste (Repository) laden
10.2.4.1 Fehler „Retrieve/Update“ kommt „Maximum execution time 15 exceded in…“
10.3 Installieren des deutschen Sprachpaketes
10.3.1 Installation von Sprachen für Backend (BE)
10.3.2 Fehlerliste Backend (BE) und Extension Manager
10.3.2.1 Fehler im Backend erscheint immer die Meldung „Invalid Security Token!“
10.3.2.2 Fehler Mirror Liste oder Repository wird nicht angezeigt.
10.3.2.3 Fehler unter „Import Extension“ beim Klicken auf „Look up“ folgende Fehlermeldung erhalten:
10.3.2.4 Fehler im Firefox leere Seite oder im IE "Seite kann nicht angezeigt werden"
10.3.2.5 Fehler „Call to undefined function: curl_init()“
10.3.2.6 Fehler „ allow_url_fopen is off, cURL is not enabled in the Install Tool “
10.3.2.7 Fehler „Update from repository“ bringt immer „Could not fetch translation status“
10.4 Sprache des Backend (BE) auf Deutsch einstellen
10.5 Einrichtung der Root Website und des Templates
10.5.1 Änderung bei den inkludierten statischen Templates
10.5.2 Erstellung des Root-Template in TYPO3
10.5.2.1 Fehler beim Erstellen einer neuen Seite kommmt „Unknow column…“
10.5.3 Ausgabe auf Website von TYPO3 testen
10.5.4 Sprache des Frontend (FE) Deutsch einstellen
10.5.5 Website mit der Extension „Template Auto-parser“
10.5.6 Root Website mit der Extension „Template Voila“
10.5.6.1 Template Voila Wizard starten
10.5.6.2 Fehler beim Anklicken von „Seite“ in der Navigation
10.5.6.3 Fehler TemplaVoilà beim Anklicken „Start wizard now!“
10.5.6.4 Fehler TemplaVoilà wird kein HTML Template angezeigt
10.5.6.5 Fehler TemplaVoilà beim Anzeigen der Webseite.
10.5.7 Verwendung der YAML Extension für die Website
10.5.8 Zusätzliche Einstellungen des Root-Templates
10.5.9 Ausführen vom „Template Analysis“ für das Root Template
10.5.9.1 Grüne Felder in Template Analysis werden angezeigt
10.6 Rich Text Editor (htmlArea)
10.6.1 Installation des Rich Text Editor
10.6.2 Einstellungen für die Rich Text Editor im Erweiterungs-Manager
10.6.3 Funktionen für die Bearbeitung von Texten im RTE ausblenden
10.6.4 Überschriften (Absatzarten) aus dem RTE ausblenden
10.6.5 Schriftarten im RTE für Standard-Formatierung einstellen
10.6.6 Eigene Überschriften für den RTE definieren
10.6.7 Erweiterte Konfiguration vom „htmlArea RTE“
10.6.8 Fehler in RTE Extension
10.6.8.1 Fehler Auswahl von Text Stil und Link anlegen nicht möglich
10.7 Erweiterung für Mehrsprachigkeit (Multilanguage)
10.7.1 Vorbereitung der TYPO3 Konfiguration auf Mehrsprachigkeit
10.7.2 Sprachdateien für TYPO3 Downloaden
10.7.3 Vorbereitung der Website auf Mehrsprachigkeit
10.7.4 Seiten in anderer Sprache anlegen
10.7.5 Sprachdefinitionen im Root Template anlegen
10.7.6 Standardmenü für Sprachumschaltung (ohne Extension)
10.7.7 Eigenes Menü für Sprachumschaltung (ohne Extension)
10.7.8 Sprachumschaltung in Website mit „sr_language_menu“
10.7.9 Automatische Spracherkennung mit "rlmp_language_detection“
10.7.10 Fehler bei Mehrsprachigen (Multilanguage) Webseiten
10.7.10.1 Fehler die Sprachumschaltung mit Symbole wird nicht angezeigt
10.7.10.2 Fehler im BE nach Umstellung der Website auf „utf8‘ kommt „Oops, an error occured!“
10.7.10.3 Fehler beim Einfügen der Sprachdefinition kommt „Oops, an error occured!“
10.7.10.4 Fehler im FE nach Umstellung der Website auf „utf-8‘ werden Umlaute nicht angezeigt
10.7.10.5 Fehler bei „Convert to UTF-8“ kommt „Call to undefined method t3lib_div::fixed_lgd_pre()…“
10.7.10.6 Fehler bei den Links wird nach Sprachumschaltung nicht “&L=1”,”&L=2“, etc. angehängt
10.7.10.8 Fehler bei Spanischen Texten wird „Ó statt Sonderzeichen anzeigt
10.7.10.9 Fehler im Template Analysis oder im Admin Panel TS-Rendering
10.7.10.10 Fehler im Admin Panel „Locale ‘en_UK’ not found.“ oder “’en_UK.utf-8’ not found.”
10.8 Grundeinstellungen für HTML Formatierungen
10.9 Verzeichnisstruktur für CMS unter „fileadmin“
11.1 Seitenstruktur in TYPO3 anlegen
11.2 Einrichtung Navigation für die Website
11.2.1 Vertikales Textmenü mit 2 Ebenen
11.2.2 Vertikales grafisches Menü (GMENU) mit 2 Ebenen
11.3 Einrichtung des Klickpfad Menüs (Breadcrumb)
11.4 Einrichtung des Bottom Menüs (Footerlinks)
11.5 Erstellung eines Sitemap Menüs
11.6 Funktion „Top“ in Webseite einbauen
11.6.1 Fehler bei der Menüerstellung
11.6.1.1 Fehler mit SPC unter TYPO3 4.4x „Please check that this is not a problem for you.“
11.6.1.2 Fehler mit RealURL wird bei interne Link für „Top“ wird immer die Startseite aufgerufen
12 Einrichtung von TYPO3 Extensions
12.1 Extension Auflistung im „Ext Manager“
12.2 Backup einer installierten Extension
12.3 Update von einer installierten Extension
12.3.1.1 Fehler bei Update einer Extension kommt „…could not be deleted!“
12.3.1.2 Fehler bei Update einer Extension kommt „The T3X file could not be fetched“
12.4 Extension Full Backup (w4x_backup)
12.4.1 Was macht diese Extension?
12.4.2 Installation w4x_backup
12.4.3 Sicherung (Backup) durchführen
12.4.4.1 Fehler bei Installation von w4x_backup
12.4.4.2 Fehler bei Backup „[function.unlink]: No such file or directory“
12.4.4.3 Fehler bei Backup „The operation was not performed“
12.4.4.4 Fehler „Fatal error: Cannot user string offset as an array in ….“
12.4.5 Manuelle Rücksicherung eines Backups
12.4.5.1 Fehler „Access denied…“ bei der manuellen Rücksicherung der Datenbank
12.4.5.2 Fehler „Unknow database…“ bei der manuellen Rücksicherung der Datenbank
12.5 Extension Indexed Search Engine (indexed_search)
12.5.1 Was macht diese Extension?
12.5.3 Einrichtungen einer CSS-Datei für Indexed Search Engine
12.5.4 Einfachere Searchbox verwenden
12.5.5 Ergebnisse in Indexed Search nach Sprache anzeigen
12.5.6 Installation für Indizierung von externen Dokumenten
12.5.6.1 Erstellen eines Verzeichnisses für die Zusatzprogramme
12.5.6.2 Installieren von HTMLDOC
12.5.6.3 Installation von XPDF
12.5.6.4 Installation von CATDOC
12.5.6.5 Pfade für externe Programme in Indexed Search festlegen
12.5.6.6 Konfiguration von Index Search für den „Crawler“
12.5.6.7 Installation und Einrichtung vom „Crawler“ (crawler) Extension
12.5.6.8 Testen der „Indexed Search“ Extension mit einer Webseite
12.5.6.9 Testen der „Crawler“ Extension mit Dateien
12.5.7 Fehler in Indexed Search
12.5.7.1 Fehler im Admin Panel werden Module unter „/usr/local/bin/“ nicht gefunden
12.5.7.2 Fehler „./configure“ vom Paket „xpdf“ mit „WARNING: Couldn‘t find freetype“
12.5.7.3 Fehler im BE nach Definition von „open_basedir“ kommt leere Website
12.5.7.4 Fehler „Indexed Search“ bei aktiven Inhalten keine Ergebnisse an
12.5.7.5 Fehler „Indexed Search“ zeigt in der Ergebnisseite „/span“ in Text an
12.6 Einrichtung eines Print Link (Druckerversion)
12.6.1 Print Link mit „type=98“
12.6.2 Print Link mit eigenen Parameter „print=1“
12.6.3 Einrichtung für Mehrsprachigkeit
12.6.3.1 Fehler mit plugin.alt.print wird „The page is not configured! [type= 98][]“
12.6.3.2 Fehler bei „type=98“ Printlink wird ###CONTENT### anstatt der Seite angezeigt.
12.6.3.3 Fehler bei Verwendung von „type=98“ Printlink kommt eine leere Seite
12.6.3.4 Fehler bei Verwendung von plugin.alt.print unter tt_news mit RealURL
12.7 Einrichtung von Captcha (captcha)
12.7.1 Was macht diese Extension?
12.7.2 Installation von Captcha
12.7.2.1 Fehler Captcha Bild oder Grafik wird nicht angezeigt (zeigt x)
12.8 Einrichtung von freecap CAPTCHA (sr_freecap)
12.8.1 Installation von sr_freecap
12.8.1.1 Installation der Extension für das „ve_guestbook“
12.9 Extension Tip-A-Friend (tipafriend)
12.9.2 Mehrsprachigkeit in Tip-A-Friend einbauen
12.9.3 Liste der Fehler von der Tip-A-Friend Extension
12.9.3.1 Fehler bei Verwendung Tip-A-Friend kommt „Oops, an error occured!“
12.9.3.2 Fehler bei Verwendung Tip-A-Friend mit RealURL
12.9.3.3 Fehler bei Tip-A-Friend mit Firefox/Netscape wird bei langen URL die Form verbreitert
12.9.3.4 Fehler beim Versand als HTML Email: Bei manchen Bildern nur Rahmen
12.9.3.5 Fehler in Tip-A-Friend bei Versand an Chello (österreichischer Provider)
12.10 Umsetzung dynamischer auf statische URL
12.10.1 Einrichtung von statischen URL mit „mod_rewrite“
12.10.2 Liste möglicher Fehler „mod_rewrite“
12.10.2.1 Fehler beim Laden der Website nach Repository Update
12.10.2.2 Fehlermeldung „Not Found“ bei Aufruf von Seiten über „mod_rewrite“
12.10.2.3 Fehlermeldung „Internal Server Error“ bei Aufruf von Seiten über „mod_rewrite“
12.10.2.4 Fehlermeldung TYPO3 „Error“ bei Aufruf von Seiten über „mod_rewrite“
12.11 Extension Real URL (realurl)
12.11.1 Was macht diese Extension?
12.11.2 Installation vom PHP Modul „mod_rewrite für RealURL
12.11.3 Installation RealURL mit “Enable automatic configuration”
12.11.4 Einrichtung von RealURL ohne „Enable automatic configuration“
12.11.5 Liste möglicher Fehler in RealURL
12.11.5.1 Fehler mit eingerichteten “Real URL“: was not matching „xxxxxx“ actually found
12.11.5.2 Fehler bei “Real URL“ funktionieren alle Seiten außer „TYPO3“
12.11.5.3 Fehler mit eingerichteten “Real URL“: File „xxxxxx“ was not found!
12.11.5.4 Fehler mit eingerichteten “Real URL“: was not found keyword for a postVarSet
12.11.5.5 Fehler mit eingerichteten “Real URL“: could not found, closest page matching is
12.11.5.6 Seiten mit „Real URL“ funktionieren nur wird im URL „cms“ verdoppelt
12.11.5.7 Fehler bei Tip-a-Friend wird URL falsch erstellt
12.11.5.8 Fehler in “RealURL management” bleibt „ID-to-path mapping“ leer
12.11.5.9 Fehler in RealURL-Verwaltung können Änderungen nicht abgespeichert werden
12.11.6 Umstellung von RealURL auf andere Domain oder ein anderes Verzeichnis
12.11.6.1 Fehler mit eingerichteten “Real URL“ CSS wird nicht gefunden
12.12 Einrichtung Formhandler (formhandler)
12.12.1 Was macht diese Extension?
12.12.2 Installation von Formhandler
12.12.3 Anpassung Formhandler für Mehrsprachigkeit (Multilanguage)
12.12.4 Captcha in Mailformplus aktivieren
12.12.5 Update vom MailformPlus auf Formhandler
12.12.6.1 Fehler auf Webseite mit „Formhandler“ Plugin „No TypoScript config found“
12.12.6.2 Fehler auf Webseite mit „Formhandler“ Plugin „Missing finishers!“
12.12.6.3 Fehler mit „Formhandler“ Plugin „Missing finishers!....Redirect“
12.12.6.4 Fehler mit „Formhandler“ Plugin „No template file found“
12.12.6.5 Fehler mit „Formhandler“ Plugin „The file… is no TYPO3 language file!”
12.12.6.6 Fehler mit „Formhandler“ Plugin wird ohne CSS Style angezeigt
12.12.6.7 Fehler im Error erscheint „The following error occured:“ obwohl deutsche Sprache
Einrichtung von Gästebuch (ve_guestbook)
12.12.7 Was macht diese Extension?
12.12.8 Installation vom Gästebuch
12.12.9 Captcha im Gästebuch aktivieren
12.12.10 Fehler in „ve_guestbook“
12.12.10.1 Fehler in der Listenansicht vom Gästebuch wird der Wochentag in englich ausgegeben
12.12.10.2 Fehler bei neuem Gästebucheintrag „Call to undefined method t3lib_div::GPvar()…“
12.12.10.5 Fehler Formatierung vom Gästebuch bei neuen Eintrag
12.12.10.6 Fehler bei Sprachumschalt auf English bei neuen Gästebucheintrag
12.13 Extension News (tt_news)
12.13.1 Was macht diese Extension?
12.13.2 Installation von tt_news
12.13.3 Update der Extension tt_news
12.13.4 Anpassungen der News Extension
12.13.5 Vorlage CSS Datei für tt_news
12.13.6 Anzeige des Archiv Menüs verändern für Monatsgruppen- oder Jahresanzeige
12.13.7 Einschränkung des Datensatztyps auf „News“
12.13.8 Einstellung von tt_news für RealURL
12.13.9 Fehler in News Extension (tt_news)
12.13.9.1 Fehler bei „Zurück zu:“ Link kommt „Keine news_id übergeben.“
12.13.9.2 Fehler der Text „[mehr]“ wird nicht als Link angezeigt
12.13.9.3 Fehler beim Text „<_Zurück zu: New“ wird unschön angezeigt
12.13.9.4 Fehler Datum in der „Latest“ Ansicht der News wird mit „of“ angezeigt
12.13.9.5 Fehler bei Anzeige von News wird nach „Alter:“ die Einheit „days“ angezeigt
12.13.9.6 Fehler bei Anzeige von News wird „Displaying results…out of…“ angezeigt
12.13.9.7 Fehler bei Anzeige von News Categorie wird „Select a category“ angezeigt
12.13.9.8 Fehler bei Druckversion mit plugin.alt.print und Einzelansicht
12.13.9.9 Fehler bei Druckversion mit Plugin make_printlink und Einzelansicht
12.13.9.10 Fehler im Backend bei Bearbeitung von Newseinträgen
12.13.9.11 Fehler nach Update auf TYPO3 V4.2.6 kommt bei News „Cannot re-assign $this in“
12.13.9.12 Fehler im „Database Analyser“ mit „Compare with $TCA“
12.13.9.13 Fehler nach Update bei Änderungen im Template Setup Bereich
12.13.9.14 Fehler in Kommentarfunktion wird Captcha nicht angenommen
12.13.9.15 Fehler tt_news 3.0.1 kommt „plugin.tt_news ERROR: No HTML template found“
12.13.10 Kommentare für News anlegen (comments)
12.13.10.1 Was mach diese Extension?
12.13.10.2 Installation der Extension „comments“
12.13.11 Erweiterung vom „comments“ (comments_ic)
12.13.11.1 Was mach diese Extension?
12.13.11.2 Installation der Extension comments_ic
12.13.11.3 Fehler bei CAPTCHA in der Datei „typo3conf/ext/comments/pi1/calls.tx_comments_pi1.php“
12.14 Einrichtung von MOC Fileshare manager (moc_filemanager)
12.14.1 Was macht diese Extension?
12.14.2 Installation von MOC Fileshare manager
12.15.1 Was macht diese Extension?
12.15.3 Wartungsarbeiten in DAM
12.15.4 Fehler in DAM Extension
12.15.4.1 Fehler unter „Media“ – „Datei“ werden die Dateien als nicht „indexiert“ angezeigt
12.15.4.2 Fehler auf jeder Seite kommt „Class ‚tx_dam‘ not found in…../temp_CACHED_...“
12.15.4.3 Fehler im Frontend „BadFunctionCallExeption“ oder „Extension key ’dam‘ was NOT loaded!“
12.15.4.4 Fehler in DAM wird das „Ordner bearbeiten“ Icon nicht angezeigt
12.15.4.5 Fehler bei Upload von Dateien in DAM „File size exeeded? (8.0M)“
12.15.4.6 Fehler bei Upload von Dateien in TYPO3 über „dam“ im Dateinamen keine Umlaute
12.16 Extension DAM Frontend (dam_frontend)
12.16.1 Was macht diese Extension?
12.16.2 Installation von dam_frontend (dam_frontend_0.6.6.t3x)
12.16.2.1 Fehler im Frontend (FE) auf Seiten mit „DAM Frontend“ Plugin
12.17 Extension MM DAM – FEFileList (mm_dam_filelist)
12.17.1 Was macht diese Extension?
12.17.2 Installation von mm_dam_filelist (mm_dam_filelist_2.0.3.t3x)
12.18 Frontend Filemanager (air_filemanager)
12.18.1 Was macht diese Extension?
12.18.2 Installation von air_filemanager (air_filemanager_0.9.27.t3x)
12.18.3 Sortierung Umstellen der Fileliste
12.19 Einrichtung von Image Rotation (ric_rotation)
12.19.1 Was macht diese Extension?
12.19.2 Installation von Image Rotation ohne Seiteninhaltselement
12.19.3 Einfügen von Image Rotation“ mit einem Seiteninhaltselement
12.19.3.2 Fehler nach Umzug auf neuen Server
12.20 Einrichtung der Image slideshow (rgslideshow)
12.20.1 Was macht diese Extension?
12.20.2 Installation der rgslideshow
12.20.2.1 Fehler im FE „Fehler: Kein Bild wurde im Backend ausgewählt“
12.21 Einrichtung der Smooth Gallery (rgsmoothgallery)
12.21.1 Was macht diese Extension?
12.21.2 Installation der rgsmoothgallery
12.21.2.1 Anpassung vom Design „SmoothGallery“ über CSS Dateien
12.21.2.2 Einrichtung von „SmoothGallery“ mit Flexforms
12.21.2.3 Fehler: Das TS wurde nicht inkludiert. Bitte im Manual nachschlagen.
12.22 Extension ICS AWstats (ics_awstats)
12.22.1 Installation der Extension „ics_awstats“
12.22.2 AWstats für normale Benutzer zugänglich machen
12.22.3 Aufgetreten Fehler bei „ics_awstats“
12.22.3.1 Fehler „No logfile found in directory“
12.22.3.2 Fehler “The logfile directory … was NOT found!”
12.22.3.3 Fehler “Could not create directory… check write permission”
12.22.3.4 Fehler “Fatal error: Call to undefined method template::Middle()”
12.23 Extension Popup Manager (popup_manager)
12.23.1.1 Fehler „Ungültiges Argument“ im MS Internet Explorer beim Öffnen der Seite
12.23.1.2 Fehler mit „popup_manager“ und „formhandler“ Extension
13.1 Scenarien einer Übersiedlung von TYPO3 Websites
13.1.1 Übersiedlung der Site vom lokalen Server auf eine ISP Server
13.2 Fehler nach Übersiedlung der Website
13.2.1 Fehler nach beim Bearbeiten im RTE
13.2.1.1 Fehler bei Login in das Backend kommt „No authentication methods available.“
13.2.1.2 Fehler beim Aufruf der Backend Website wird diese nicht richtig angezeigt
13.2.1.3 Fehler im Forntend wird nur eine leere weiße Seite angezeigt
13.2.1.4 Fehler beim Aufruf der Frontend Website ist das Design (CSS) zerstörrt
13.2.1.5 Fehler anstatt der Sprachumschaltung (Flaggen) wird die Seitentitel angezeigt
13.2.1.6 Fehler die Sprachumschaltung wir mit komischen Flaggensymbolen angezeigt
13.2.1.7 Fehler die Flaggensymbolen für die Sprachumschaltung werden nicht mehr angezeigt
13.2.1.9 Fehler im BE kommt „Fatal error: Allowed memory size…“
13.2.1.11 Fehler Umlaute und Sonderzeichen auf der neuen Website werden nicht angezeigt
13.2.1.12 Fehler „Allowed memory size of … bytes exhausted tried to allocate x bytes)…“
13.2.1.13 Fehler beim Aufruf von Tip-A-Friend wir nur eine leer Seite angezeigt
13.2.1.14 Fehler eingefügte Bilder im RTE Text werden nicht angezeigt
13.2.1.15 Fehler „Warning: date(): Ist not safe to relay on the systems’s timezone settings.“
14 Sicherheitseinstellungen für TYPO3
14.1.1 TYPO3 Install Tool sichern
14.1.2 Einstellungen im TYPO3 „Install Tool“
14.1.3 Standard „admin“ Konto absichern
14.1.4 Immer aktuelle Source Dateien für TYPO3 Core verwenden
14.1.5 Passwort Sicherheit erhöhen mit „saltedpassword“
14.1.6 Unnötige Extension von TYPO3 löschen
14.1.7 Verwenden Sie nur geprüfte Extension
14.1.8 Immer die aktuellsten Extension von TYPO3 verwenden
14.1.9 Backend-Logins überwachen
14.1.10 Die Konfigurationsdatei „localconf.php“ absichern
14.2 Apache Webservers absichern
14.2.1 Deaktivieren Sie die Auflistung von Verzeichnissen
14.2.2 Entfernen von unnötigen Paketen vom Server
14.4.1 Installation von phpMyAdmin als Extension
14.4.1.1 Fehler „phpMyAdmin“ im Backend „Cannot start session without errors“
14.4.2 MySQL Rechtekonzept mit phpMyAdmin
14.4.2.1 Neuen Benutzer für „phpMyAdmin“ anlegen
14.4.2.2 Neuen MySQL Benutzer für TYPO3 anlegen
14.4.2.3 Neuen Datenbankbenutzer in TYPO3 unter „localconf.php“ eintragen
14.4.3 phpMyAdmin – Authentication Method
14.4.4 phpMyAdmin – Konfiguration mit „Cookie Authentication“
15.1 TYPO3 Skripte und Datenbankzugriff
15.1.1 Nicht mehr unterstützter Datenbanzugriff für neu TYPO3 Versionen
15.2 TYPO3 Objektzugriffe unter PHP
15.2.1 Zugriff auf „uid“ oder „pid“ vom PHP
15.2.2 Zum Auslesen der pids gibt es eine eigene Funktion
Ich möchte mich an diese Stelle für die Hilfe bedanken die ich durch zahlreiche TYPO3 Forums (oder durch freie Dokumentationen) bekommen habe. Dadurch wurde es erst möglich, dass ich diese Anleitung fertigstellen konnte.
Entschuldigen möchte ich mich, für den teilweise schlechten Stil, die Grammatik und Rechtschreibfehler die mit Sicherheit noch vorhanden sind. Meine Zeit ließ es leider nicht mehr zu alle diese Fehler vor der Veröffentlichung zu beseitigen.
Als Server wurde hier ein SUSE Linux Enterprise Server 11 (SLES11 SP1) verwendet.
Der Server wurde mit der Paketauswahl „Schemata“ aufgesetzt wobei für TYPO3 die Auswahl „Web- und LAMPP-Server“ notwendig ist. Diese Auswahl installiert die Pakete für Apache2, PHP5.2 und MySQL5.
Teilweise wird versucht, auch auf Installations- oder Konfigurationsunterschiede, für TYPO3 Installationen bei Internet Service Providern (ISP) einzugehen. Wobei auf Grund der Komplexität der unterschiedlichen Anbieter dies nur in einem generellen Zusammenhang geschehen kann.
Installieren Sie TYPO3 V4.5.x nach der Anleitung von Kapitel „Installation von TYPO3“. Kontrollieren Sie danach die Funktion des Backends und des Frontends.
Alle folgenden Beschreibungen beziehen sich auf die TYPO3 Version 4.5.x
Sollten Sie eine ältere oder neuere Version von TYPO3 benutzen, muss eventuell mit Abweichungen gerechnet werden.
Diese Anleitung setzt die Grundlagen von TYPO3 voraus, d.h. das Installieren von Extensions, die Anlage einer Seite, oder einen Record von Typ „plugin einfügen“, oder was ein TS (TypoScript) Template ist. Des Weiteren wären Grundlagen von HTML und CSS von Vorteil.
Ich hoffen trotzdem, dass diese Anleitung manchen eine Hilfestellung bei der Einrichtung oder bei Problemstellungen von TYPO3 bieten kann, die sich für den Einsatz von TYPO3 als Website CMS System entschieden haben oder sich noch in der Evaluierungsphase befinden.
Diese Anleitung gibt anhand von Beispielen die Einrichtung einer Website in einzelnen Schritten wieder. Es wird keine Gewähr auf Vollständigkeit, Richtigkeit oder Fehlerfreiheit gegeben. Die einzelnen Ausführungen können als Anregung für die Erstellung der eigenen Website verwendet werden.
Wichtige Anweisungen oder Warnungen beginnen mit einem Block WICHTIG .
Sonstige zusätzliche oder erklärende Hinweise sind mit Hinweis gekennzeichnet.
Auszuführenden Befehle beginnen mit dem Prompt und danach mit dem Befehl in Fettschrift wie z.B.: „SLES11:~ # cd /srv/www/htdocs“. Ein eventueller Rückgabetext von Befehlen wir in Normalschrift angeführt. Variablen oder Platzhalter innerhalb von Befehlszeilen werden in roter fetter Schrift oder in spitzen Klammern (<..>) in nicht fetter Schrift dargestellt.
Beispielskripte sind immer in Rahmen eingeschlossen. Die 3 Punkte (…) in den Skripten stehen für beliebigen Code der vor oder nach dem Script stehen kann.
Sollten Zeilennummer vorhanden sein, so dürfen diese nicht eingegeben werden.
Alle Änderungen in den Beispielskripten sind in roter fetter Schrift dargestellt. Platzhalter für veränderbare Werte werden innerhalb der Beispielskripte in fetter schwarzer Schrift eingefügt.
Achten Sie im Zusammenhang mit Änderungen immer auf dem umgebenden Text in Normalschrift, dieser hilft die Änderungen im Script an der richtigen Stelle zu positionieren.
Jeder aufgetretene Fehler der während der Installationsroutinen oder währen des Arbeiten auftrat wurde erfasst. Dabei wurde zuerst der Fehler beschrieben (ggf. mit Bild) und danach werden die Ursache und die Abhilfemaßnahmen beschrieben.
Als Editor sollten Sie einen Verwenden, mit welchen Sie auch
in UTF-8 Zeichensatz speichern können wie z.B „PSPad“. Besonders dann wenn die
komplette Website auf UTF8 Zeichensatz umgestellt wurde.
Download PSPad: http://www.pspad.com/de/download.php
Wenn Sie die Dateien mit einem normalen Windows Editor bearbeiten und abspeichern könnte es passierren das Sie alle Sonderzeichen und Umlaute verlieren.
Wenn Sie eine neue Website erstellen sollten Sie zuerst festlegen wie diese Website aussehen soll und welche Funktionen innerhalb der Website erforderlich sind.
Hinweis Wenn Sie schon eine Website haben, die Sie unter TYPO3 einsetzen wollen, so können Sie dieses Kapitel überspringen.
Es soll eine neue Website für Eine Homepage entworfen werden die unter TYPO3 läuft.
Zuerst werden Überlegungen angestellt, wie die zu entwickelnde Website aussehen soll. und welche Funktionalitäten vorhanden sein sollten.
Wir gehen nach folgenden Schritten vor:
- Inhalte festlegen
- Design festlegen (wie sollen die Inhalte dargestellt werden)
- Funktionalitäten festlegen (mit welche Extension können diese Funktionalitäten erfüllt werden)
- Planung der Template Struktur (HTML Templates)
Welche Inhalte sollen auf der Website dargestellt werden:
·
Impressum und Datenschutz
Informationen zum Betreiber der Website und zu den Datenschutzrichtlinien.
·
Kontaktformular
Online Kontaktformular für Besucher der Website erstellen.
·
Sitemap
Anzeige der Sitemap für alle Seiten erstellen.
·
Website Suchen
Integrierte Suche auf die Website einbauen.
·
Gästebuch
Für Websitebesucher die Möglichkeit Bemerkungen anzulegen.
·
Miteilungen (News)
Bereich zur Anzeige allgemeiner aktueller Informationen aus allen Bereichen.
·
Dokumentenverwaltung
Möglichkeit zum Upload von Dokumenten in allen möglichen Formaten und Anzeige
in Kategorien ermöglichen
·
Downloadverwaltung
Möglichkeit zum Upload von Dateien und Anzeige in Kategorien.
· Linksseite (zu anderen Websites)
Das Design der Website sollte folgende Anforderungen erfüllen:
· Standardauflösung von 1024x768 ohne Scrollen
· keine Frames verwenden
· CSS Formatierungen
·
Navigation mit Grafikbuttons vertikal am linken Rand
Die Größe dieses Bereiches über CSS fix Einstellen damit Menü bei Verkleinerung
des Browser Fensters immer sichtbar bleibt
· Oberhalb der Navigation ganz links Anzeige Website Logos
·
Im oberen Bereich neben der Navigation Anzeige eines wechselnden
Banner-Bildes.
Wenn das Browser Fenster verkleinert wird soll das Banner-Bild unter das
Website Logo verschoben werden.
· Unterhalb der Logos und Banners ein so genanntes Breadcrumb Menü anzeigen.
· Im Fußbereich immer die Copyright Meldung anzeigen.
·
Inhaltbereichsbreite je Auflösung des Browsers auf ganze Seite
erweitern.
Der Text des Inhaltsbereiches. soll auch wenn das Browserfenster verkleinert
wird, nicht nach unten verschoben werden (siehe CSS Formatierung).
· Mitteilungen auf der rechten Seite in einen eigenen Bereich anzeigen.
· Kopfleiste mit Bild und daneben Text mit Grafik der über den Inhaltsbereich geht
· Navigationsbutton „Top“ und „Print“ in jedem Inhaltsbereich.
Die Designvorlage wurde mit einem Webdesign-Programm (WYSIWYG) mit alle benötigten Grafiken erstellt. Dies sollte nicht als Empfehlung angesehen werden, denn die meisten Webdesign-Programme erzeugen einen unsauberen HTML Code der aus sehr vielen Tabellen besteht. Eine manuelle Bearbeitung des erzeugten Quellcode ist nur schwer möglich.
Der Einsatz eines Webdesign Programm kann nur dann empfohlen werden, wenn eine Formatierung aller Elemente mit CSS und automatische <div> Abschnitt Erzeugung unterstützt wird.
Die erstellt Designvorlage im Browser sieht folgenderweise aus („index.htm“):

Die „onmouseover“ Effekte im Navigationsbereich - immer wenn die Maus über einen Menüpunkt bewegt wird - können Sie nur sehen, wenn Sie in Ihrem Browser „JavaScript“ aktiviert haben.
Der erstellt HTML Quellcode in der „index.htm“ Datei der durch das Design-Programm DreamWaver generiert wurde:
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <!-- DW6 --> <head>
<title>Homepage</title> <link rel="stylesheet" href="rpw.css" type="text/css" />
</head>
<body> <div id="masthead"> <div id=”logo”> <table width="200" border="0"> <tr> <td><img src="images/rpwlogo.gif" alt="logo" width="380" height="41" /></td>
<td><img src="images/BannerImage1.jpg" alt="" width="472" height="51" border="0" /></td> </tr> </table> </div> <div id="logo-arrow"> </div> <div id="breadCrumb"> <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> </div> </div> <div id="navBar"> <div id="search"> <form action="#"> <label><span class="sectiontitle">Suche</span></label> <input name="" type="text" size="15" /> <input name="go" type="button" value="go" /> </form> </div> <div id="sectionLinks"> <h3 class="sectiontitle">TYPO3 Links</h3> <ul> <li><a href="#">News</a></li> <li><a href="#">Dokumente</a></li> <li><a href="#">Download</a></li> <li></li> </ul> </div> <div id="sectionLinks"> <h3 class="sectiontitle">Domino Links</h3> <ul> <li><a href="#">News</a></li> <li><a href="#">Dokumente</a></li> <li><a href="#">Download</a></li> <li></li> </ul> </div> </div> <!--end navBar div --> <div id="content"> <div class="story"> <h3>Titelgeschichte</h3> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie. Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor. </p> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie. Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor. </p> </div> </div> <!--end content --> <div id="siteInfo"> <a href="#" class="footer">Impressum</a> | <a href="#" class="footer">Sitemap</a> | <a href="#" class="footer">Datenschutz</a> | <a href="#" class="footer">Kontakt</a> | ©2009-2010 Real Power Work</div> <br /> </body> </html> |
Die durchgestrichenen Zeilen wurden aus dem HTML Template entfernt und die der rote (fette) Text wurde zusätzlich eingefügt.
Danach sieht das HTML Template wie folgt aus:
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>RealPowerWork</title> <link rel="stylesheet" href="rpw.css" type="text/css" /> </head>
<body> <div id="masthead"> <div id="logo"> <table width="200" border="0"> <tr> <td><img src="images/rowlogo_m.gif" alt="Real Power Work" width="472" height="51" /></td> <td><img src="images/BannerImage1.JPG" alt="" width="715" height="100" border="0" /></td> </tr> </table> </div> <div id="logo-arrow"> </div> <div id="banner"> </div> <div id="breadCrumb"> <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> / <a href="#">breadcrumb</a> </div> </div> <div id="navBar"> <div id="searchbox"> <form action="#"> <label><span class="sectiontitle">Suche</span></label> <input name="" type="text" size="15" /> <input name="go" type="button" value="go" /> </form> </div> <div id="siteLinks"> <h3 class="sectiontitle">TYPO3 Links</h3> <ul> <li><a href="#">News</a></li> <li><a href="#">Dokumente</a></li> <li><a href="#">Download</a></li> <li></li> </ul> </div> </div> <!--end navBar div -->
<!--end headlines --> <div id="lang_switch"> </div> <div id="content"> <h3>Titelgeschichte</h3> <p> Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec molestie. Sed aliquam sem ut arcu. Phasellus sollicitudin. Vestibulum condimentum facilisis nulla. In hac habitasse platea dictumst. Nulla nonummy. Cras quis libero. Cras venenatis. Aliquam posuere lobortis pede. Nullam fringilla urna id leo. Praesent aliquet pretium erat. Praesent non odio. Pellentesque a magna a mauris vulputate lacinia. Aenean viverra. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Aliquam lacus. Mauris magna eros, semper a, tempor et, rutrum et, tortor. </div> <div id="function"> </div> <!--end content --> <div id="siteInfo"> <a href="#" class="footer">Impressum</a> | <a href="#" class="footer">Sitemap</a> | <a href="#" class="footer">Datenschutz</a> | <a href="#" class="footer">Kontakt</a> | ©2009-2010 Real Power Work</div> </body> </html> |
Die Original (vom DreamWaver) erzeugte CSS sieht so aus:
|
/***********************************************/ /* 3col_leftNav.css */ /* Use with template 3col_leftNav.html */ /***********************************************/
/***********************************************/ /* HTML tag styles */ /***********************************************/
body{ font-family: Arial,sans-serif; color: #333333; line-height: 1.166; margin: 0px; padding: 0px; }
a{ color: #8080C0; text-decoration: none; }
a:link{ color: #8080C0; text-decoration: none; }
a:visited{ color: #8080C0; text-decoration: none; }
a:hover{ color: #333366; text-decoration: none; }
h1{ font-family: Verdana,Arial,sans-serif; font-size: 120%; color: #334d55; margin: 0px; padding: 0px; }
h2{ font-family: Arial,sans-serif; font-size: 114%; color: #006699; margin: 0px; padding: 0px; }
h3{ font-family: Arial,sans-serif; font-size: 100%; color: #334d55; margin: 0px; padding: 0px; }
h4{ font-family: Arial,sans-serif; font-size: 100%; font-weight: normal; color: #333333; margin: 0px; padding: 0px; }
h5{ font-family: Verdana,Arial,sans-serif; font-size: 100%; color: #334d55; margin: 0px; padding: 0px; }
ul{ list-style-type: square; }
ul ul{ list-style-type: disc; }
ul ul ul{ list-style-type: none; }
label{ font-family: Arial,sans-serif; font-size: 100%; font-weight: bold; color: #334d55; }
/***********************************************/ /* Layout Divs */ /***********************************************/
#masthead{ padding: 2px 0px 0px 0px; border-bottom: 1px solid #cccccc; width: 100%; height: auto; }
#navBar{ float: left; width: 18%; background-color: #BFBBD0; border-right: 1px solid #cccccc; border-bottom: 1px solid #cccccc; padding: 0px; margin-left: 2px; }
#headlines{ float:right; width: 18%; border-left: 1px solid #cccccc; border-bottom: 1px solid #cccccc; padding-right: 10px; margin-right: 5px; }
#content{ float: left; width: 59%; }
/***********************************************/ /* Components */ /***********************************************/
#siteName{ margin: 0; padding: 0 0 0 10px; }
/*************** #pageName styles **************/
#pageName{ margin: 0px; padding: 0px 0px 0px 10px; }
/************* #breadCrumb styles *************/
#breadCrumb{ font-size: 80%; padding: 2px 0px 2px 10px; text-decoration: none; }
/************** .feature styles ***************/
.feature{ padding: 0px 0px 10px 10px; font-size: 80%; }
.feature h3{ padding: 30px 0px 5px 0px; text-align: center; }
.feature img{ float: left; padding: 10px 10px 0px 0px; }
/************** .story styles *****************/
.story{ clear: both; padding: 10px 0px 0px 10px; font-size: 80%; }
.story p{ padding: 0px 0px 10px 0px; }
/************* #siteInfo styles ***************/
#siteInfo{ clear: both; border: 1px solid #cccccc; font-size: 75%; color: #cccccc; padding: 10px 10px 10px 10px; }
#siteInfo img{ padding: 4px 4px 4px 10px; vertical-align: middle; }
/************* #search styles ***************/
#search{ padding: 5px 0px 5px 10px; border-bottom: 1px solid #cccccc; font-size: 90%; }
#search form{ margin: 0px; padding: 0px; }
#search label{ display: block; margin: 0px; padding: 0px; }
/*********** #navBar link styles ***********/
#navBar ul a:link, #navBar ul a:visited { display: block; } #navBar ul {list-style: none; margin: 0; padding: 0;}
/* hack to fix IE/Win's broken rendering of block-level anchors in lists */ #navBar li { border: solid 1px #BFBBD0; }
/* fix for browsers that don't need the hack */ html>body #navBar li {border-bottom: none;}
/*********** #sectionLinks styles ***********/
#sectionLinks{ margin: 0px; padding: 0px; font-size: 90%; text-decoration: none; }
#sectionLinks h3{ padding: 10px 0px 2px 10px; text-decoration: none; }
#sectionLinks a { display: block; padding: 2px 0px 2px 10px; text-decoration: none; }
#sectionLinks a:hover{ background-color: #dddddd; text-decoration: none; }
/************** #advert styles **************/
#advert{ padding: 30px 0px 10px; }
#advert img{ display: block; }
.toptext { color: #8080C0 } |
Die angepasste CSS Datei für TYPO3 dann so:
|
/***********************************************/ /* homepage.css */ /* Use with template index.html */ /***********************************************/
/***********************************************/ /* HTML tag styles */ /***********************************************/
body{ font-family: Arial,sans-serif; font-size: 1.2em; color: #333333; line-height: 1.166; margin: 0 auto; padding: 0px; width: 900px; border: 1px solid #CCCCCC;
}
a{ /* color: #8080C0; */ color: #404090; text-size: 1.2em; text-decoration: none; }
.iconlink a:link{ color: #404090; font-size: 0.5em; text-decoration: none; }
.iconlink a:visited{ color: #404090; font-size: 0.5em; text-decoration: none; }
a:link{ /* color: #8080C0; */ color: #404090; text-decoration: none; }
a:visited{ /* color: #8080C0; */ color: #404090; text-decoration: none; }
a:hover{ /* color: #333366; */ color: #8888CC; text-decoration: none; }
h1{ font-family: Verdana,Arial,sans-serif; font-size: 120%; color: #000000; margin: 0px; padding: 0px; }
h2{ font-family: Arial,sans-serif; font-size: 114%; color: #000000; margin: 0px; padding: 0px; }
h3{ font-family: Arial,sans-serif; font-size: 100%; color: #334d55; margin: 0px; padding: 0px; }
h4{ font-family: Arial,sans-serif; font-size: 100%; font-weight: normal; color: #333333; margin: 0px; padding: 0px; }
h5{ font-family: Verdana,Arial,sans-serif; font-size: 100%; color: #334d55; margin: 0px; padding: 0px; }
ul{ list-style-type: square; }
ul ul{ list-style-type: disc; }
ul ul ul{ list-style-type: none; }
label{ font-family: Arial,sans-serif; font-size: 100%; font-weight: bold; color: #334d55; }
/***********************************************/ /* Layout Divs */ /***********************************************/
#logo{ float: left; margin-top: 12px; margin-left: 4px; margin-right: 7px; margin-bottom: 1px; }
#logo-arrow{ clear: left; float: left; margin-top: 5px; margin-left: 3px; }
#banner{
}
#masthead{ padding: 2px 0px 0px 0px; border-bottom: 1px solid #cccccc; width: 100%; height: auto; }
#navBar{ float: left; font-size: 90%; width: 169px; background-color: #BFBBD0; /* border-right: 1px solid #cccccc; border-bottom: 1px solid #cccccc; */ padding: 0px; padding-bottom: 15px; margin-left: 2px; min-height:22em; }
#headlines{ float:right; width: 20%; border-left: 1px solid #cccccc; border-bottom: 1px solid #cccccc; padding-right: 10px; margin-right: 4px; }
#content{ float: left; font-size: 74%; width: 78%; /* Breite für Inhalt bei Firefox, bei größer 55 wird Text nach unten verschoben */ padding: 10px 10px 5px 10px; }
#function { clear:both; text-align:right; margin-right: 20px; }
#lang_switch { float: right; margin-right: 10px;*/ }
/*************** #pageName styles **************/
#pageName{ margin: 0px; padding: 0px 0px 0px 10px; }
/************* #breadCrumb styles *************/
#breadCrumb{ font-size: 80%; padding: 4px 0px 4px 10px; text-decoration: none; }
/************* #searchbox styles ***************/
#searchbox{ padding: 5px 0px 5px 10px; border-bottom: 1px solid #cccccc; font-size: 90%; }
#searchbox form{ margin: 0px; padding: 0px; }
#searchbox label{ display: block; margin: 0px; padding: 0px; }
/*********** #navBar link styles ***********/
#navBar ul a:link, #navBar ul a:visited { display: block; color: #101033; background-color: #bfbbd0; }
#navBar ul.menu_list1 a:hover, #navBar ul.menu_list2 a:hover { text-decoration: none; color: #666666; background-color: #dddddd; }
/* Formating aktives Untermenü */ #navBar ul.menu_list1 a.menu_active, #navBar ul.menu_list2 a.menu_active { display: block; color: #666666; background-color: #dddddd; }
#navBar ul.menu_list1 {list-style: none; margin: 0; padding: 0; font-weight: 700;} #navBar ul.menu_list2 {list-style: none; margin: 0 10px; padding: 0; font-weight: 300;}
/* hack to fix IE/Win's broken rendering of block-level anchors in lists */ #navBar li { border: solid 1px #BFBBD0; }
/* fix for browsers that don't need the hack */ html>body #navBar li {border-bottom: none;}
/*********** #siteLinks styles ***********/
#siteLinks{ margin: 0px; padding: 0px 10px; /* Für die Zentrierung von Hover und Active Farbalken */ font-size: 90%; text-decoration: none; }
#siteLinks a { display: block; padding: 0px; padding-top: 2px; /* Für den Abstand der Menüzeilen */ text-decoration: none; }
/************* #siteInfo styles ***************/
#siteInfo{ clear: both; border-top: 1px solid #cccccc; font-size: 75%; color: #999999; padding: 10px; }
#siteInfo img{ padding: 4px 4px 4px 10px; vertical-align: middle; }
/************** class styles **************/
.toptext{ color: #8080C0; } .sitetitle{ color: #333366; } .sectiontitle{ color: #101033; }
/****** class styles for screen reader ********/ .usb{ display: block; position: absolute; left: -3000px; height: 0px; width: 0px; } |
Die HTML Vorlagedatei die vom Webdesigner Programm erstellt
wurde, entspricht allen Vorgaben einer modernen Website Programmierung. Die
einzelnen Informationsblöcke sind klar und eindeutig durch <div> Elemente
getrennt worden. Jeden dieser <div> Elemente wurde ein Name zugeordnet.
Zusätzliche Formatierungen wurden durch Klassennamen festgelegt.
Die CSS Datei verwendet bei der Formatierung die Name der <div> Elemente,
sowie die zugewiesenen Klassenname.
Damit braucht für die HTML Vorlagedatei und die CSS Datei keine weitere Anpassung für die Verwendung als TYPO3 HTML Vorlagedatei vorgenommen werden.
Freie HTML Vorlagedateien für TYPO3 gibt es nicht so viele wie für andere Web Content Mangement Systeme (WCMS) aber ein Herr Gerhard Rasi hat Sammlung zusammengestellt die sich sehen lassen kann:
http://rasi.ch/index.php?id=39
Nachdem wir nun den Inhalt und das Design der Website festgelegt haben können wir die Struktur der Seite festlegen. Die Struktur einer Website ergibt sich meist schon der geplanten Navigation. Daraus ergibt sich in unserem Beispiel folgende Struktur:
Öffentlicher Bereich Bemerkung
Home à News News
aus allen Bereichen
Dokumente Dokumente
Kategorisiert
Downloads Download
Kategorisiert
Gästebuch Anmerkungen
von Besuchern
Impressum Web-Impressum
Sitemap Sitemap
der Website
Datenschutz Erklärung vom
Datenschutz
Kontakt Kontaktformular
Die Struktur der Website wurde sehr flach gehalten. Es gibt nur eine Ebene (außer der Kategorisierung). Daher kann auch das Menü sehr einfach mit einer (höchstens zwei Ebenen für die Kategorisierung) erstellt werden.
Ein wesentlicher Vorteil bei der Nutzung einer Website für den Benutzer entsteht erst durch das Einbauen von Funktionen in die Website.
Als Grundfunktionen für Website gibt es meist ein Kontaktformular, Sitemaps, Gästebuch, etc. Diese verwenden oft spezielle Funktionen wie auch den Versand von Emails.
Unter TYPO3 werden die meisten Funktionen, welche nicht schon im Standard vorhanden sind, werden durch sogenannte TYPO3 Extension abgebildet.
In den weiteren Kapiteln wird, der Einbau der Funktionen, mit oder ohne Extension, bei der jeweiligen Rubrik erklärt und auf Fehler hingewiesen.
Unter TYPO3 besteht die Möglichkeit alle Inhaltselemente direkt mit TypoScript zu definieren. Dabei könnten auch alle HTML Formatierungen, CSS Formatierungen und die verwendeten JavaScripts direkt unter TypoScript eingegeben werden. Dies kann aber innerhalb kurzer Zeit zu einem unübersichtlichen Code unter TypoScript führen.
Bei der zweiten moderneren Möglichkeit wird als Vorlage eine HTML Datei verwendet, welche die Formatierungen festlegt, in welchen die dynamischen Inhalte angezeigt werden. Zusätzlich können die CSS und JavaScript Dateien werden als Dateien in das Template eingebunden werden.
Da bei den meisten Internet Auftritten die Gestaltung der Website von einem externen Graphiker oder Design Team als normale HTML Seite erstellt wird, bietet sich die Verwendung dieser Dateien als Vorlagedateien für das TYPO3 HTML-Template an.
Hinweis Unter TYPO3 wird der Begriff Template zweimal verwendet. Einmal für die Templates in der TYPO3 Strukturansicht und einmal für HTML Vorlagedatei der Webseite. Um Verwirrungen zu vermeiden wird hier immer vom HTML-Template gesprochen wenn die HTML Vorlagedatei gemeint ist.
Einen etwas anderen Ansatz verwendet YAML. Damit wird nur die Grundstruktur der Webseite in den üblichen 2 Spalten oder 3 Spalten Formaten festgelegt. Komplexere Design sind mit diesem Ansatz nicht umzusetzen, hier geht es mehr um die einheitliche Gestaltung von Webseiten Design nach definierten Regeln. Damit können dann relativ einfach barrierefreie Websites nach gleichen Regeln erstellt werden.
Die TYPO3 Erweiterung db_ttv ist der aktuelle Nachfolger der vorher unter dem Namen YAML für TYPO3 bekannten TYPO3 Extension, die seit dem 1. September 2008 unter der GPL lizensiert ist. Eine komplette und neue Dokumentation finden Sie ab Anfang Januar 2009 im neuen Bereich, der eigens dafür eingerichtet wurde.
YAML Dokumentation
http://www.yaml.de/de/dokumentation.html
Grundlegendes HTML Template für die Webseite (template_1.html):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>TYPO3 - Demoseite</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="styles.css" rel="stylesheet" title="Fixe Breite" type="text/css">
<meta content="RealPowerWork" name="author">
<meta content="Zur Demonstration der TYPO3 Funktionen" name="description">
</head>
<body>
<div id="all">
<div id="top">
<div id="menu_top">
<h3>
<ul>
<li><a href"#">Menue 1</a></li>
<li><a href"#">Menue 2</a></li>
<li><a href"#">Menue 3</a></li>
</ul>
</h3>
</div>
<div id="logo">
Logo
</div>
</div>
<div id="menu_sub">
<ul>
<li><a href"#">Submenue 1</a></li>
<li><a href"#">Submenue 2</a></li>
<li><a href"#">Submenue 3</a></li>
</ul>
</div>
<div id="content_area">
<div id="picture">
Picture
</div>
<div id="content">
Content
</div>
</div>
<div id="content_end">
<div id="copyright">
Copyright © 2009 Company GmbH
</div>
<div id="function">
Functions
</div>
</div>
<div id="bottom">
<div id="search_bottom">
Bottom Left
</div>
<div id="menu_bottom">
Bottom Right
</div>
</div>
</div>
</body>
</html>
Die CSS Datei wird in einen eigenen Unterverzeichnis „styles“ erstellt.
Die CSS Datei beinhaltet folgendes (style.css):
/*****************************************/
/* */
/* Stylesheet 1 fuer fixes Layout */
/* TYPO3 Demoseite */
/* */
/* (c) 2005 by R.P.Wimmer */
/*****************************************/
* {
margin: 0;
padding: 0;
}
body {
font: 76% "Trebuchet MS", sans-serif;
color: #000;
}
a:link, a:visited {
color: #000;
}
h1 {
color: #fff;
font-size: 2.2em;
padding: 26px 0 0 30px;
}
h1 span {
font-size: 0.56em;
}
h1 a:link, h1 a:visited {
text-decoration: none;
color: #fff;
}
.csc-header h1 {
color: #000;
font-size: 1.5em;
padding-left: 0;
}
.quellen li {
float:none;
margin-left: 1.4em;
}
/* Bereiche (von oben nach unten) */
#all {
width: 800px;
margin: 0 auto; /* firefox: horizontal content in the middle screen */
margin-top: 0.3em; /* margin top from the browser windows for firefox IE */
background-color: #e2e6e9;
}
#top {
margin-top: -1px; /* Bughack for IE overlaping background blocks */
height: 100px;
background: #D0D4D6 url(gfx/t3head_bg_fix.jpg) top center;
}
#colbar_top {
float: left;
height: 5px; /* works only for firefox, IE ignore it */
font-size: 5px; /* Bughack for IE set height for color bar */
width: 596px;
margin-left: 10px;
color: #FFF;
background-color: #0A7;
}
#menu_top {
float: left;
line-height: 90px;
line-height: "92px"; /* Boxhack for IE for Overlapping boxes */
margin-left: 10px;
width: 85%;
}
#logo {
float: right;
padding: 20px 20px 0 10px;
}
#menu_sub {
position: relative;
margin-top: 8px; /* must set for firefox: top position of submenu */
height: 2.2em; /* height of the line from sub menue */
/* width: 790px; must be reduced to the padding from left and right */
padding: 0 10px; /* set the postion for the menu from left and right */
background-color: #E2E6E9;
border-bottom: 1px solid #C2C2B2;
}
#content_area {
margin: 0 auto;
margin-top: 10px;
margin-bottom: 1.6em;
background: url(gfx/t3bg_tiled.gif) -390px 0 repeat-y;
}
#picture {
float: left;
margin-left: 5px;
width: 200px;
padding: 0 10px; /* for Firefox begin of picture */
}
#content {
float: left;
margin-left: 5px;
width: 500px;
padding: 0 20px 0 0; /* for Firefox and IE begin of content DO NOT CHANGE*/
}
/* Holly Hack */
#content_area:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
#colbar_right {
top: 120px;
float: right;
height: 390px;
width: 5px;
background-color: #0A7;
}
#content_end {
clear: both;
height: 1.6em;
width: 800px;
padding: 2px 10px -5px 0; /* the -5px must be set for IE
/*color: #fff;
background-color: #000;*/
}
#copyright {
float: left;
font-size: 0.9em;
margin-left: 5px;
color: #B0B0B0;
}
#function {
float: right;
margin-right: 15px;
}
#bottom {
clear: both;
height: 1.6em;
width: 800px;
padding: 2px 10px -5px 0;
/*color: #fff;
background-color: #000;*/
border-top: 1px solid #C2C2B2;
background: #D0D4D6 url(gfx/t3head_bg_fix.jpg) bottom center;
}
#search_bottom{
float: left;
padding: 0 5px 0 5px;
}
#menu_bottom {
float: right;
padding: 0 5px 0 1px;
}
/* Kein IE-mac \*/
* html #content {height: 1%;}
/* Ende kein IE-mac */
/* Ende Holly Hack */
#settings {
position: absolute;
top: 0;
margin: 0 auto;
padding: 0 10px -5px 0;
width: 800px;
height: 1.8em;
color: #fff;
background-color: #000;
}
#settings li {
padding: 0.2em 0.8em 0.1em 0.8em;
}
#settings form select {
background-color: #000;
color: #fff;
font-size: 0.9em;
height: 1.6em;
border: none;
}
/* Klassen innerhalb von Bereichen */
.print_button {
padding: 0 4px;
}
.tip_button {
padding: 0 4px;
}
/* Formatierung für Listen als Menues */
#menu_top ul, #menu_sub ul, #menu_bottom ul {
list-style: none;
}
#content ul {
list-style: disc;
}
#menu_top li:hover, #menu_top li.iehover { /* define li.iehover for IE 'hover' bug, new class generate with java script */
background-color: #E2E6E9;
}
#menu_sub li:hover, #menu_sub li.iehover { /* define li.iehover for IE 'hover' bug, new class generate with java script */
background-color: #D0D4D6;
}
#menu_top li, #menu_sub ul li, #menu_bottom ul li {
position: relative;
float: left;
}
/* Star-HTML-Hack wird nur vom IE ausgeführt */
* html li li {
width: 4em;
}
/* Selektor-Kommentar schließt IE4/5 für Windows und Mac aus */
#id/* */{
}
#menu_top li ul, #menue_sub li ul, #menu_bottom li ul {
display: none;
position: absolute;
padding: 0.4em 1.2em;
left: 0;
background-color: #D0D4D6;
border-bottom: 1px solid #C2C2B2;
}
#menu_top li > ul, #menue_sub li > ul, #menu_bottom li > ul {
top: auto;
}
li:hover ul, li.iehover ul { display: block; } /* second submenues, class .iehover defined with java script for IE bug */
#menu_top li li, #menu_sub li li, , #menu_bottom li li {
display: block;
float: none;
height: 1.7em;
white-space: nowrap;
}
/* Class for Screen reader set content to hidden */
li .usb {
display: block;
position: absolute;
left: -3000px;
height: 0px;
width: 0px;
}
/* Links spezial */
#menu_top a:link, #menue_top a:visited {
display: block;
text-decoration: none;
padding: 0.2em 1.2em 0.1em 1.2em;
}
#menu_top li li a:hover {
text-decoration: underline;
}
#menu_top li li a:link, #menue_top li li a:link {
display: block;
padding: 0.2em 0 0.2em 0;
}
#menu_top li:hover {
height: 91px;
padding: 0 0 -500px;
background-color: #E2E6E9;
}
#menu_top a.active_link {
height: 91px;
width : "12em"; /* Boxmodelhack for IE */
color: #f00;
border-left: 1px solid #C2C2B2;
border-right: 1px solid #C2C2B2;
background-color: #E2E6E9;
}
#menu_sub a:link, #menue_sub a:visited {
display: block;
text-decoration: none;
padding: 0.2em 1.2em 0.1em 1.2em;
}
#menu_sub li:hover {
background-color: #D0D4D6;
}
#menu_sub li li a:hover {
text-decoration: underline;
}
#menu_sub li li a:link, #menue_sub li li a:link {
display: block;
padding: 0.2em 0 0.2em 0;
}
#menu_sub a.active_link {
color: #f00;
}
#menu_bottom a:link, #menue_bottom a:visited {
display: block;
text-decoration: none;
padding: 0 1.2em 0.1em 1.2em;
}
.menu_bottom {
height: 7px;
margin-top: 5px;
}
Nach der Erstellung des HTML Templates, egal ob Sie dies komplett manuell, mit einem Webseiten-Designer-Programm oder mit YAML durchführen, müssen Sei die Bereiche für die dynamischen Inhalte für TYPO3 festlegen.
Es bestehen mehrere Möglichkeiten die HTML Vorlagedatei für die Verwendung als TYPO3 Template vorzubereiten:
1. Die Kennzeichen für die dynamischen Bereiche (Marker oder Subparts) werden direkt in die HTML Datei eingefügt. Der Nachteil dieser Methode ist, dass Sie die HTML Vorlagedatei, auch mit einen Webseiten-Design-Programm das diese zulässt, nicht mehr bearbeiten oder verändern können. Weil Sie dadurch ggf. die dynamischen Bereiche wieder zerstören.
2. Die zweite Methode benutzt eine Extension von TYPO3 die sich „Automake Template“ nennt. Dabei werden die schon vorhanden Tags einer HTML Datei wie <td>, <ol>, <li> oder auch <div id=“xxx“> von der Extension automatisch in dynamische Bereiche (Subparts) umgewandelt. Der Vorteil dieser Methode ist solange Sie keine manuellen Änderungen an der HTML Vorlagedatei vornehmen, kann diese immer noch mit der HTML Designer Programm bearbeitet werden.
3. Die dritte Methode ist die eleganteste und neueste. Dabei wird auch wieder eine Extension von TYPO3 verwendet diese heißt „TemplateVoila“. Auch hier müssen keine Änderungen an der originalen HTML Vorlagedatei vorgenommen werden. Der Vorteil dieser Methode zeigt sich erst bei der Zuordnung der Inhalte zu den dynamischen Bereichen. Dies kann über ein grafisches Menü in TYPO3 per Drag&Drop vorgenommen werden.
Ältere Microsoft Internet Explorer ignorieren die Angabe „height“ vom CSS. Abhilfe kann hier nur eine Hintergrundgrafik oder eine Hidden Grafik (space.gif) bieten, welche die genaue Höhe der Webseite festlegt.
Der Microsoft Internet Explorer unterhalb Version 6 unterstützt die Funktion Hover über CSS nicht vollständig. Damit Hover im IE funktioniert muss ein kleines JavaScript in die Webseite innerhalb des <head> Tags eingefügt werden.
JavaScript für IE damit Hover unterstützt wird für HTML Template (template_1.html):
<script type="text/javascript" language="JavaScript1.2">
<!--//--><![CDATA[//><!--
ieHover=function() {
var LIs=document.getElementsByTagName("LI");
for (var i=0; i<LIs.length; i++) {
LIs[i].onmouseover=function() {
this.className+=" iehover";
}
LIs[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" iehover\\b"), "");
}
}
}
if (window.attachEvent) window.attachEvent("onload", ieHover);
//--><!]]>
</script>
Im CSS wird für die neue Klasse „iehover“ die Hover Funktion definiert (styles.css):
#menu_top li:hover, #menu_top li.iehover { /* define li.iehover for IE 'hover' bug, new class generate with java script */
background-color: #E2E6E9;
}
#menu_sub li:hover, #menu_sub li.iehover { /* define li.iehover for IE 'hover' bug, new class generate with java script */
background-color: #D0D4D6;
}
li:hover ul, li.iehover ul { display: block; } { /* define li.iehover for IE 'hover' bug, new class generate with java script */
Der Microsoft Internet Explorer unterhalb Version 6 kann Blockdefinitionen nicht richtig verarbeiten, d.h. der Block wird immer auf den kompletten „width“ Wert erweitert. Diese kann durch Eintragungen im CSS verhindert werden.
Eintrag im CSS für Boxmodelhack für die Breite von Boxen:
|
... #menue_top a.active_link { height: 91px; width : "12em"; /* Boxmodelhack for IE */ color: #f00; border-left: 1px solid #C2C2B2; border-right: 1px solid #C2C2B2; background-color: #E2E6E9; } … |
Der „width“ Wert wurde in Anführungszeichen gesetzt, dies ist ein Trick damit dieser Wert nur vom Microsoft Internet Explorer verarbeitet wird. Netscape und Firefox ignorieren solchen Einträge.
Der Internetexplorer hat auch Probleme mit dem „height“ Wert im CSS. Während im Netscape und Firefox die Boxen überlappend dargestellt werden, wird im Microsoft Internet Explorer ein Spalt angezeigt.
Eintrag im CSS für Boxmodelhack für die Höhe von Boxen:
|
... #menu_top { float: left; line-height: 90px; line-height: "92px"; /* Boxhack for IE for Overlapping boxes */ margin-left: 10px; width: 85%; } … |
Wieder wurde der Eintrag in Anführungszeichen gesetzt. Ein Netscape oder Firefox Browser akzeptiert nur den ersten Eintrag für „line-height“. Der Microsoft Internet Explorer dagegen verwendet den zweiten Eintrag für „line-height“ der in Anführungszeichen gesetzt wurde.
Eine Zusammenfassung aller CSS Hacks finden Sie bei „Self HTML“ auf:
http://de.selfhtml.org/index.htm
Hinweis Wenn Sie TYPO3 Installation auf einem Server bei einem Internet Service Provider durchführen, so entnehmen Sie die Installation der Anleitung Ihres Providers. Sie können diese Kapitel daher überspringen.
Bevor Sie mit der Installation von TYPO3 beginnen können, müssen Sie sicherstellen das die notwendigen Serverdienste gestartet wurde. TYPO3 benötigt einen Webserver (Apache) und einen Datenbankserver (MySQL, PostgreSQL, Oracle) und PHP. Zusätzlich benötigt TYPO3 noch spezielle PHP Module, welche auch noch vor der Installation bereitgestellt werden müssen.
Wenn die Installation von Apache, PHP und MySQL nicht schon bei der Installation vom Linux Server durchgeführt wurde gehen Sie wie folgt vor.
1. Öffnen Sie „YaST“
2. Klicken Sie in
der Navigation auf „Software“
3. Dann auf „Softwarepakete
installieren oder entfernen“
4. Wählen Sie dann
„Anzeigen“ und „Schemata“ aus. In der Schema Liste wird dann „Webserver
und LAMP-Server“ markiert.

5. Klicken Sie jetzt auf „Übernehmen“ um die Installation auszuführen.
Danach sollte der Apache Server, PHP und auch des MySQL Server installiert sein.
Sie können den Apache und den MySQL Server manuell starten oder so konfigurieren das er beim Start von Linux automatisch gestartet wird.
Kontrollieren Sie mit folgenden Befehl ob der Apache Server gestartet wurden:
|
SLES11:~ # ps aux | grep apache root 7734 0.0 0.1 7592 884 pts/0 S+ 10:24 0:00 grep apache SLES11:~ # |
Wenn Sie die obige Anzeige erhalten wurden der Apache Server noch nicht gestartet.
Starten Sie den Apache Server mit folgendem Befehl:
|
SLES11:~ # rcapache2 start Starting httpd2 (prefork) done SLES11:~ # |
Kontrollieren Sie nochmals ob der Apache Server läuft mit den „ps“ Befehl:
|
SLES11:~ # ps aux | grep apache root 8004 0.1 0.8 181784 6188 ? Ss 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 8005 0.0 0.5 181784 3824 ? S 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 8006 0.0 0.5 181784 3824 ? S 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 8007 0.0 0.5 181784 3824 ? S 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 8008 0.0 0.5 181784 3824 ? S 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf wwwrun 8009 0.0 0.5 181784 3824 ? S 10:29 0:00 /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf root 8100 0.0 0.1 7592 880 pts/0 S+ 10:31 0:00 grep apache SLES11:~ # |
In der ersten Spalte wird der Benutzername angezeigt unter welchen der Apache Server läuft, in diesen Fall ist das „wwwrun“. Inder 8. Spalte wird durch das „S“ angezeigt das dieser Prozess als Serverdienst ausgeführt wird. In der letzten Spalte sieht man durch den Text „/usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf“ das es sich bei diesen Prozess um den Apache2 Serverdienst handelt. Jede Zeile die ausgegeben wird steht für eine Instanz des Apache Servers, d.h. der Apache Server wird hier mit 5 Instanzen ausgeführt.
Wenn Sie den Apache Server mit dem Befehl „rcapache2 start“ gestartet haben, bleibt dieser nur bis zum nächsten Neustart vom Linux System aktiv, d.h. nach einem Neustart müssen Sie den Apache Server wieder manuell starten. Damit dieser automatisch mit dem Starten vom Linux System gestartet wird muss dieser zu der „Autostart“-Konfiguration hinzugefügt werden.
Damit der Apache Server beim nächsten Start vom Linux System
automatisch ausgeführt wird geben wir folgendes ein:
SLES11:~ # insserv apache2
Mit dem folgenden Befehl kontrollieren Sie in welchen „Runlevel“ von Linux der Apache Server gestartet wird:
|
SLES11:~ # chkconfig -l apache2 apache2 0:off 1:off 2:off 3:on 4:off 5:on 6:off SLES11:~ # |
Die obige Ausgabe von „3:on“ und „5;on“ besagt das der Apache Server in den Runlevel 3 und Runlevel 5 (normaler Serverbetriebsmodus) gestartet wird.
Hinweis Durch den Start vom Apache Server wird auch PHP automatisch gestartet, d.h. Sie brauchen PHP nicht separat starten.
Dieses Update spätestens dann notwendig, wenn Sie unter SLES 11 eine TYPO3 4.6.x Version betreiben wollen.
Das Software Repository für das PHP5 Update unter SLES 11
finden Sie hier:
http://download.opensuse.org/repositories/server:/php/SLE_11/
1. Öffnen Sie den „YaST“
– „Software“.
2. Gehen Sie dann
auf „Software Repositorys“ klicken auf die Schaltfläche „Hinzufügen“.

3. Wählen Sie „HTTP“
aus und klicken Sie auf „Weiter“.
4. Geben Sie die
unten angezeigten Informationen für das Repository ein.

Repository-Name: SLES11 PHP5 5.3.8
Servername: download.opensuse.org
Verzeichnis auf dem Server: /repositories/server/php/SLE_11/
Port: 80
5. Mit nochmals klicken
auf „Weiter“ sollte das Software Repository einrichtet werden.
6. Zum Update der
vorhanden PHP Version gehen Sie jetzt auf „Software installieren oder
löschen“. Wählen Sie den Register „Repositorys“ aus, danch
selektieren Sie das neue Repository „SLES11 PHP5 5.3.8“. Klicken Sie
dann auf „Systempakete“ um die vorhandene Version von PHP5 auf die neue
Version von 5.3.8 umzustellen.

7. Damit der Update
gestartet wird, jetzt noch auf „Übernehmen“ klicken und die
automatischen Änderung mit „Forfahren“ bestätigen.
8. Nachdem der
Update durchgeführt wurde muss der Apache Server neu gestartet werden:
„rcapache2 restart“
9. Kontrollieren
Sie jetzt im Backend unter „Installation“ (TYPO3 Install Tool) mit dem
Menüpunkt „phpinfo()“ die vorhanden PHP5 Version:

Diese sollte jetzt die Version 5.3.8 anzeigen.
Kontrollieren Sie mit folgenden Befehl ob der MySQL Server gestartet wurden:
|
SLES11:~ # ps aux | grep mysql root 11416 0.0 0.1 7592 884 pts/0 S+ 11:34 0:00 grep mysql SLES11:~ # |
Wenn Sie die obige Anzeige erhalten wurden der Apache Server noch nicht gestartet.
Starten Sie den Apache Server mit folgendem Befehl:
|
SLES11:~ # rcmysql start Starting service MySQL done SLES11:~ # |
Kontrollieren Sie nochmals ob der MySQL Server läuft mit den „ps“ Befehl:
|
SLES11:~ # ps aux | grep mysql root 11466 0.0 0.1 11152 1496 pts/0 S 11:35 0:00 /bin/sh /usr/bin/mysqld_safe --mysqld=mysqld --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --socket=/var/lib/mysql/mysql.sock --datadir=/var/lib/mysql mysql 11506 0.0 2.5 136444 19712 pts/0 Sl 11:35 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/lib/mysql/mysqld.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock root 11561 0.0 0.1 7596 896 pts/0 S+ 11:35 0:00 grep mysql SLES11:~ # |
Für die Ausgabe in den Spalten gilt das gleiche wie schon bei der Anzeige vom Apache Server.
Wenn Sie den MySQL Server mit dem Befehl „rcmysql start“ gestartet haben, bleibt dieser nur bis zum nächsten Neustart vom Linux System aktiv, d.h. nach einem Neustart müssen Sie den MySQL Server wieder manuell starten. Damit dieser automatisch mit dem Starten vom Linux System gestartet wird muss dieser zu der „Autostart“-Konfiguration hinzugefügt werden.
Damit der MySQL Server beim nächsten Start vom Linux System
automatisch ausgeführt wird geben wir folgendes ein:
SLES11:~ # insserv mysql
Mit dem folgenden Befehl kontrollieren Sie in welchen Linux „Runlevel“ der MySQL Server automatisch gestartet wird:
|
SLES11:~ # chkconfig -l mysql mysql 0:off 1:off 2:on 3:on 4:off 5:on 6:off SLES11:~ # |
Die obige Ausgabe von „2:on“, „3:on“ und „5:on“ besagt das der MySQL Server in den Runlevel 2, 3 und 5 (normaler Serverbetriebsmodus) gestartet wird.
TYPO3 benötigt für die Installation und den Betrieb noch zusätzliche Programme und PHP Module. Betriebsnotwenige Programme oder Module für TYPO3 sind „gd“ „php5-gd“, „php5-mysql“ und „zlib“.
1. Öffnen Sie „YaST“
2. Klicken Sie in
der Navigation auf „Software“
3. Dann auf „Softwarepakete
installieren oder entfernen“
4. Klicken Sie dann
auf den Reiter „Suchen“ und geben Sie in das Suchfeld „gd“ ein.
Wählen Sie aus der Paketliste die Pakete „gd“ und „php5-gd“ aus.

5. Geben Sie jetzt
in das Suchfeld „mysql“ ein und klicken Sie auf „Suchen“. Wählen Sie
aus der Paketliste „php5-mysql“ aus.

6. Geben Sie jetzt
in das Suchfeld „zlib“ ein und klicken Sie auf „Suchen“. Wählen
Sie aus der Paketliste „php5-zlib“ aus.

7. Geben Sie als
nächstes „curl“ in das Suchfeld ein und klicken Sie auf „Suchen“. Wählen
Sie aus der Paketliste „php5-curl“ aus.

8. Klicken Sie auf
„Übernehmen“ damit alle gewählten Programmpakete installiert werden.
Bestätigen Sie das Fenster „Automatische Änderungen“ mit „Fortfahren“.
9. Starten Sie danach den Apache Server mit „rcapache2 restart“ neu.
Damit Sie von einer externen Station auf dem Server über „http“ zugreifen können müssen Sie noch die Firewall konfigurieren. Zusätzlich wird hier noch „SSH“ freigeschaltet damit eine „Secure Console“ Verbindung zum Server hergestellt werden kann.
Gehen Sie dazu in den „YaST“ – „Benutzer und Sicherheit“ – „Firewall“

Diese Anleitung wurde für die Installation von TYPO3 auf einen lokalen Server zusammengestellt. Wenn TYPO3 auf einen Server bei einem Internet Provider zur Verfügung gestellt wird, gehen sich nach Anleitung Ihres Internet Providers vor. Je nachdem, ob dies ein SLES11-Server mit Shell-Zugang ist, oder ein Server welcher nur FTP-Zugang bietet, können Sie gleich zu Kapitel „4.5 TYPO3 Install Tool starten“, oder zu „8 Erstellung der Website in TYPO3“ weitergehen.
Wenn Sie den Download Quelldateien (Sourcedateien) für TYPO3 nicht auf Ihrem SLES11 Server durchgeführt haben, dann müssen Sie diese Dateien zuerst auf den SLES11 Server kopieren. Am besten in das Homeverzeichnis vom „root“ Benutzer „/root/“ (unten ein Beispiel).
SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/dummy-4.5.15.tar.gz .
SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/introductionpackage-4.5.15.tar.gz .
SLES11:~ # cp /mnt/hgfs/Typo3/Source-Tarball/typo3_src-4.5.15.tar.gz .
Kopieren Sie die TYPO3-Quellcode- und Dummy-Archiv Dateien in Ihr Dokument Verzeichnis Ihres Webservers (/srv/www/htdocs/) und entpacken Sie diese dort.
Benennen Sie das Dummy-Verzeichnis mit „mv“ um. Das TYPO3-Quellcodeverzeichnis darf nicht unbenannt werden da ansonsten die symbolischen Links nicht mehr funktionieren.
SLES11:~ # cp typo3_src-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # tar -xvzf typo3_src-4.5.15.tar.gz
SLES11:/srv/www/htdocs # tar -xvzf dummy-4.5.15.tar.gz
SLES11:/srv/www/htdocs # mv dummy-4.5.15 cms
WICHTIG Ersetzen Sie den Namen „cms“ durch den gewünschten Namen in welchen Ihr TYPO3 Installationsverzeichnis auf dem Server sein soll.
Sie können danach die gepackten Pakte von TYPO3 löschen
SLES11:/srv/www/htdocs # rm typo3_src-4.5.15.tar.gz
Um Ihre TYPO3 vor unberechtigten Änderungen zu schützen sollten Sie die Verzeichnisrechte Ihres TYPO3 Verzeichnisses folgenderweise einstellen.
Stellen Sie zuerst fest unter welchen Account Ihr Apache Server läuft mit:
SLES11:~ # ps aux | grep apache2
An erster Stelle der Rückgabe steht der Benutzer unter der der Webserver-Prozess läuft. Dies kann je nach Linux Version vom „Apache“ unterschiedlich sein.
Bei SLES 11 ist das der Benutzer „wwwrun“. Wichtig ist das „S“ in der 8. Spalten was besagt der Prozess als Serverdienst läuft.
WICHTIG Alle nachfolgenden Anleitungen gehen davon aus, dass das „cms“ Ihr SLES11 Verzeichnis für TYPO3 ist. Sollte Sie ein anderes Verzeichnis verwenden müssen Sie „cms“ immer durch Ihren Verzeichnisnamen ersetzen oder ganz weglassen.
Ändern Sie jetzt die Gruppe und die Berechtigungen für die Verzeichnissen Ihrer TYPO3:
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # chown –R wwwrun typo3_src-4.5.15/ cms/
SLES11:/srv/www/htdocs # chmod –R u+w,o-rwx typo3_src-4.5.15/ cms/
Damit erhält der Benutzer “wwwrun” Schreibzugriff auf den TYPO3-Quellcode und das “cms“ Verzeichnis. Zusätzlich entfernen dabei alle Rechte für die Benutzer “Other”.
Kontrollieren Sie danach die Verzeichnisrechte in jedem Verzeichnis mit „ls -l“.
WICHTIG Die nächsten Schritte müssen Sie nur ausführen wenn Sie nicht mit dem „Dummy“ Paket von der TYPO3 V4.5.15 arbeiten oder wenn Sie ein Update von vorhanden TYPO3 Installationen vornehmen. Ansonsten weiter bei Kapitel „4.4 MySQL Datenbank kontrollieren“
Wenn Sie schon eine ältere Version von TYPO3 installiert haben und jetzt mit dieser Version von TYPO3 ein Update durchführen wollen müssen Sie noch ein paar Anpassungen vornehmen.
SLES11: cd /srv/www/htdocs/cms
SLES11:/srv/www/htdocs/cms # rm typo3_src
SLES11:/srv/www/htdocs/cms # ln –s ../typo3_src-4.5.15 typo3_src
SLES11:/srv/www/htdocs/cms # ln -s
typo3_src/t3lib t3lib
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3
SLES11:/srv/www/htdocs/cms # rm
index.php
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/index.php index.php
Wobei das Verzeichnis „cms“ hier das TYPO3 Arbeitsverzeichnis ist, welches Sie durch Ihr TYPO3 Installationsverzeichnis ersetzen müssen.
Danach sollt mit „ls –l“ folgendes angezeigt werden:

Hinweis Wenn Sie mehrere Websites unter TYPO3 betreiben die in unterschiedlichen Verzeichnissen liegen, so müssen Sie für jedes Verzeichnis die oben durchgeführte Einbindung vornehmen.
Hinweis Wenn sich der MySQL Server bei einem Internet Service Provider (ISP) befindet, so entnehmen Sie die Datenbank-Installation und -Konfiguration der Beschreibung Ihres Providers. Meist ist der MySQL Server schon so konfiguriert sodass Sie dieses Kapitel überspringen können.
WICHTIG Nach der Installation besitzt der „root“ Benutzer vom MySQL Server kein Passwort, Sie sollten aber in einen Befehlszeilen-Terminal oder in MySQL-Konsole sofort ein Passwort für diesen vergeben. Ersetzen Sie in der Befehlszeile oben den Text „meinpasswort“ durch Ihr gewünschtes Passwort.
In einen Befehlszeilen-Terminalfenster:
SLES11:~ # mysqladmin password meinpasswort
In der MySQL-Konsole:
|
SLES11:~ # mysql
-u root mysql > quit |
Geben Sie folgenden Befehl ein um festzustellen, welche Datenbank-Engines auf dem Server installiert sind.
WICHTIG Für TYPO3 V4.5.x und neuer benötigen Sie jetzt auch die „InnoDB“ Engine, da manche Tabellen bewußt mit der „InnoDB“ Engine angelegt werden. Beispiel sind z.B. „cach_hash“, „cache_imagesize“, „sys_historie“, etc.
|
mysql> show engines; +------------+---------+----------------------------------------------------------------+ | Engine | Support | Comment | +------------+---------+----------------------------------------------------------------+ | MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance | | MEMORY | YES | Hash based, stored in memory, useful for temporary tables | | InnoDB | YES | Supports transactions, row-level locking, and foreign keys | | BerkeleyDB | NO | Supports transactions and page-level locking | |
Als “DEFAULT” wird also hier die “MyISAM” Engine verwendet.
Hinweis In der Datei „/t3lib/stddb/tables.sql“ z.B. steht bei Datenbanken, wie „cache_hash“, „cache_imagesize“, etc. zusätzlich immer der Text „ENGINE=InnoDB“, damit diese Tabellen mit der „InnoDB“ Engines angelegt werden. Alle anderen Datenbanken werden mit der im MySQL Server als Standard Engine (DEFAULT) festgelegten angelegt. Wenn Sie im TYPO3 Install Tool unter „Database Analysis“ auf „COMPARE“ klicken führt TYPO3 einen Vergleich mit den Vorgaben Tabellen durch und fordert Sie auf ggf. die Engine durch „ALTER…“ zu ändern.
Anzeige der Engines und der Kollation in den Tabellen ausführen:
|
SLES11: ~ # mysql –uroot -p mysql> use databasename mysql> show table status; |
Sie können mit dem “phpMyAdmin” sich die genauso die verwendeten Engines und die Kollationen anzeigen lassen.
Das folgende Bild zeigt eine Mischung zwischen “MyISAM” und “InnoDB” Engine sowie zwichen den Kollationen von “utf8_general_ci” und “latin1_swedisch_ci”.

Hinweis Es stellt
unter MySQL und unter TYPO3 kein Problem dar, wenn Tabellen Engines gemischt werden,
zwischen „MyISAM“ und „InnoDB“. Wobie TYPO3 früher normalerwise nur die Engine
„MyISAM“ verwendet hat.
Beim verschiednen Charactersets oder den Kollationen sollten Sie vorsichtig
sein. Hier sollten Sie sicherstellen, dass immer nur ein Characterset und eine
Kollation verwendet wird. Bei neuen TYPO3 Datenbanken ist dies immer „utf-8“.
Damit Sie nicht nach der Installation von TYPO3 draufkommen, dass einige Umlaute oder Sonderzeichen nicht funktionieren, oder auch wenn Sie eine mehrsprachige TYPO3 Seite einsetzen wollen, sollten Sie den Zeichensatz des MySQL Servers kontrollieren.
Nach der Installation von SLES 11 mit den Schemata „Web- und LAMP-Server“ wird auch der MySQL Server installiert. Dabei wird als Vorgabe durch die Sprachauswahl „Deutsch“ der MySQL Server mit dem Characterset „latin1“ (ISO-8859-1) aufgesetzt.
Kontrollieren Sie den Characterset mit:
|
SLES11:~ # mysql -u root -p mysql > status; … Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 … |
oder in der „/etc/my.cfg“
|
… [mysqld] character-set-server = latin1 collation-server = latin1_german1_ci … |
WICHTIG Ab TYPO3 Version 4.5 sind alle anderen Zeichensätze als der UTF-8 „deprecated“ (veraltet), es sollte daher bevorzugt der „utf8“ Zeichensatz verwendet werden, weil dieser mit MySQL5, PHP5.2 und Apache2 keine Probleme macht. Damit können Sie auch spätere Erweiterungen in TYPO3 ohne Probleme einsetzen.
Hinweis Vorsicht bei der Konfiguration muss oft „utf8“ das andere mal wieder „utf-8“ (Bindestrich wichtig) angegeben werden. TYPO3 funktioniert größtenteils auch mit dem „latin1“ Zeichensatz ohne Probleme. In neueren TYPO3 Versionen wird aber nur mehr „utf8“ unterstützt werden.
Wenn Sie den Standard Zeichensatz des neuen MySQL Server
gleich auf „utf-8“ umstellen wollen gehen Sie wie folgt vor.
WICHTIG Wenn schon
Datenbanken und Tabelle vorhanden sind, welche mit dem alten Zeichensatz
erstellt wurde (z.B. „latin1“), dann müssen Sie diese nach dieser Umstellung
auch alle auf „utf-8“ konvertieren. Um solche Probleme mit schon vorhandenen
Datenabnken zu vermeiden, können Sie auch nur einzelne Datanbanken im „utf-8“
Zeichensatz erstellen.
1. Öffnen Sie Datei
„/etc/my.cnf“ zur Bearbeitung:
SLES11:~ # vi /etc/my.cnf
2. Fügen Sie jetzt
folgende Zeilen in diese Datei ein (bei SLES 11 sind diese normalerweise nicht
vorhanden):
|
... [mysqld] character-set-server = utf8 default-character-set = utf8 default-collation = utf8_unicode_ci
[client] character_set = utf8 default-character-set = utf8 … |
3. Starten Sie
jetzt den MySQL Server neu:
„rcmysql restart“
4. Kontrollieren
Sie den Standardzeichnensatz vom MySQL Server.
|
SLES11:~ # mysql -u root -p mysql > status; Connection id: 1 Current database: Current user: root@localhost SSL: Not in use Current pager: less Using outfile: '' Using delimiter: ; Server version: 5.0.67 SUSE MySQL RPM Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /var/lib/mysql/mysql.sock Uptime: 14 sec |
Wenn überall „utf8“ angezeigt wird ist die Einstellung für den MySQL Server korrekt.
5. Damit auch PHP5
nur mehr den „utf8“ Zeichensatz verwendet , müssen Sie noch zusätzlich einen
Eintrag in der Datei „/etc/php5/apache2/php.ini“ folgende Zeile
einfügen:
|
… ; PHP's built-in default is text/html default_mimetype = "text/html" ;default_charset = "iso-8859-1" default_charset = "utf-8" … |
6. Starten Sie
danach den Apache Server neu:
„rcapache2 restart“
7. Kontrollieren im
TYPO3 Install Tool unter „phpinfo()“ den eingestellten Zeichensatz für
PHP:
![]()
Klicken Sie auf „SQL“ und geben Sie den Text „SHOW VARIABLES LIKE ‚%collation%‘“ in den Eingabebereich ein und klicken Sie auf „Go.“ Die Kollation wird für die Sortierung verwendet.

Sie sollte danach eine ähnliche Ausgabe wie diese sehen:

Wenn Sie die TYPO3 Datenbank gleich in „utf8“ Format anlegen wollen gehen Sie wie folgt vor:
1. Erstellen Sie
eine neue MySQL5 Datenbank mit „utf8“. Wählen Sie mit phpMyAdmin unter
„Optionen“ – „Kollation“ die „utf8_general_ci“ aus.
Wenn Sie phpMyAdmin nicht installiert haben geben Sie folgendes ein um einen
Datenbank anzulegen eine Datenbankbenutzer zu erstellen und die Berechtigungen
zu vergeben:
|
SLES11:~ # mysql
-u root –p mysql > create user 'typo3'@'localhost' identified by 'meinpasswort'; mysql > grant all on cms.* to 'typo3'@'localhost'; |
WICHTIG Wenn Sie einen anderen Namen
für Ihre TYPO3 Datenbank verwenden wollen so ersetzten Sie den Text „cms“ durch
Ihre Datenbank. Ersetzen Sie auch den Benutzernamen „typo3“ und das Passwort „meinpasswort“
durch die von Ihnen gewünschten Benutzernamen und Passwort.
2. Wenn Sie später dann das TYPO3 Install Tool starten (siehe Kapitel „TYPO3 Install Tool“) dann wählen Sie gleich diese Datenbanknamen, entweder „cms“ oder Ihren eingeben aus.
Das folgende Skript wurde für die Situation geschreiben in welchen UTF-8 kodierten Daten in Latin-1 (oder andere Zeichensätze) Tabellen gespeichert wurden. Hier ist es also notwendig eine Konvertierung dieser Daten vorzunehmen. Siehe http://wiki.typo3.org/UTF-8_support
Bevor Sie jetzt gleich loslegen und Ihre vorhandene TYPO3 Installation, welche noch in einen anderen Zeichensatz als „utf-8“ installiert wurde, updaten sollten Sie folgendes beachten:
WICHTIG Als erstes führen Sie ein Backup Ihrer Datenbank aus! Wir können einfach eine MySQL Dump Datei erzeugen mit „mysqldump database –u root –p > backup_database.sql“
Hinweis Ersetzen Sie den Text „database“ durch Ihren Datenbanknamen.
1. Erstellen Sie
eine Datei mit dem Namen „db_utf8_fix.php“ im Verzeichnis „fileadmin“.
|
<?php /******************************************/ // db_utf8_fix.php // // Author: J. van Hemert // // Date: 26-10-2011 // // // // Fixes encoding when utf-8-encoded data // // is stored in tables with other (e.g. // // latin_swedish_ci) encoding. // // Will convert all columns in all tables // // to utf8_general_ci. // // Run from fileadmin folder in TYPO3 // // installation. // /******************************************/
//Set to TRUE to generate an enormous amount of debug output with //analysis of table structure. define('DEBUG', FALSE); //Set to FALSE to really convert the database define('SIMULATE', TRUE);
require_once ('../typo3conf/localconf.php');
echo str_repeat(' ', 256); ?> <html> <head> <style type="text/css"> .normal { color: black; } .okay { color: green; } .label { color: blue; } .error { color: red; } </style> </head> <body> <?php
$tables = array(); $typeconv = array( 'char' => 'binary', 'text' => 'blob', ); $db = mysql_connect($typo_db_host, $typo_db_username, $typo_db_password, TRUE); if (!is_resource($db)) { die('Could not connect to db!: ' . mysql_error()); } if (mysql_select_db($typo_db, $db) === FALSE) { die('Could not select database!: ' . mysql_error()); }
// Collect table names $sql = 'SHOW TABLES;'; $db_res = mysql_query($sql, $db); if (!is_resource($db_res)) { die ('Could not get query result!: ' . mysql_error() . "\n" . $sql); } while ($row = mysql_fetch_array($db_res, MYSQL_NUM)) { if (DEBUG) { var_dump($row); } $tables[] = $row[0]; }
// process each table foreach ($tables as $table) { echo '<div><span class="label">' . $table . ': </span><span class="normal">'; // Collect column information $sql = 'SHOW FULL COLUMNS FROM `' . $table . '`;'; $db_res = mysql_query($sql, $db); if (!is_resource($db_res)) { die ('Could not get table data!: ' . mysql_error() . "\n" . $sql); } $columns = array(); while ($row = mysql_fetch_assoc($db_res)) { if (DEBUG) { echo 'column: '; var_dump($row); } $columns[] = $row; } // process each column foreach ($columns as $column) { set_time_limit(60); $oldtype = $column['Type']; if (DEBUG) { echo 'Original: ' . $column['Type'] . "\n"; } // modify type into a binary equivalent $column['Type'] = str_replace(array_keys($typeconv), array_values($typeconv), $column['Type']); if (DEBUG) { echo 'modified: ' . $column['Type'] . "\n"; } // only do the magic if the type was modified if ($column['Type'] != $oldtype) { $column['Null'] = (strtolower($column['Null']) == 'yes') ? 'NULL' : 'NOT NULL'; $column['Default'] = (is_numeric($column['Default'])) ? $column['Default'] : ($column['Default'] === 'NULL') ? $column['Default'] : '\'' . $column['Default'] . '\''; $sql = 'ALTER TABLE `' . $table . '` MODIFY COLUMN `' . $column['Field'] . '` ' . $column['Type'] . ' ' . $column['Null']; // only use default part if it's not a blob/text if (strpos($column['Type'], 'blob') === FALSE) { $sql .= ' DEFAULT ' . $column['Default']; } $sql .= ' ' . $column['Extra'] . ';'; if (DEBUG) { echo $sql . "\n"; } else { if (!SIMULATE) { $db_res = mysql_query($sql, $db); if (!is_resource($db_res) && mysql_errno($db) != 0) { echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql; } } } // modify type back to the non-binary equivalent, but add utf8 character set / collation setting $column['Type'] = str_replace(array_values($typeconv), array_keys($typeconv), $column['Type']); $sql = 'ALTER TABLE `' . $table . '` MODIFY COLUMN `' . $column['Field'] . '` ' . $column['Type'] . ' CHARACTER SET utf8 COLLATE utf8_general_ci ' . $column['Null']; if (strpos($column['Type'], 'text') === FALSE) { $sql .= ' DEFAULT ' . $column['Default']; } $sql .= ' ' . $column['Extra'] . ';'; if (DEBUG) { echo $sql . "\n"; } else { if (!SIMULATE) { $db_res = mysql_query($sql, $db); if (!is_resource($db_res) && mysql_errno($db) != 0) { echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql; } } echo '.'; ob_flush(); flush(); } } }
// set defaults for table to utf8 $sql = 'ALTER TABLE `' . $table . '` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;'; if (DEBUG) { echo $sql . "\n"; } else { if (!SIMULATE) { $db_res = mysql_query($sql, $db); if (!is_resource($db_res) && mysql_errno($db) != 0) { echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql; } } echo '</span><span class="okay"> OK</span></div>'; ob_flush(); flush(); }
} // set defaults for database to utf8 echo '<div><span class="label">DATABASE: </span><span class="normal">'; $sql = 'ALTER DATABASE `' . $typo_db . '` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;'; if (DEBUG) { echo $sql . "\n"; } else { if (!SIMULATE) { $db_res = mysql_query($sql, $db); if (!is_resource($db_res) && mysql_errno($db) != 0) { echo 'Could not execute query!: ' . mysql_error($db) . "\n" . $sql; } } echo '</span><span class="okay"> OK</span></div>'; ob_flush(); flush(); }
echo '<div>finished converting tables</div>'; mysql_close($db); ?> </body> </html> |
2. Führen Sie
danach die Datei über den URL http://www.mydomain.com/fileadmin/
db_utf8_fix.php aus.
Hinweis Ersetzen Sie den Text „www.mydomain.com“
durch Ihren Servernamen.
3. Damit das
SPHP-Skript wirklich Änderungen an der Datenbank vonimmt müssen innderhalb des
Skriptes die Zeile „define('SIMULATE', TRUE);“ auf „define('SIMULATE',
FALSE);“ ändern.
WICHTIG Prüfen Sie
vorher ob die Datenbank nicht schon auf „utf8“ umgewandelt worden ist, da Sie
ansonsten eine Überraschung bei der Rücksicherung erleben und Umlaute und
Sonderzeichen falsch dargestellt werden. Siehe Fehler doppelte UTF8
Konvertierung.
4. Führen Sie jetzt
nochmals einen Datenbank Dump (Sicherung aus):
mysqldump -u
root -p --max_allowed_packet=10000000 --ignore-table=typo3.sys_refindex
database > typo3_latin1.sql
5.
Konvertieren Sie in der erstellen Dump Datei „typo3_utf8.sql“
die „Collation“ und „Charset“ Einstellungen:
sed 's/
character_set_client=latin1/character_set_client=utf8/g' typo3_latin1.sql > typo3_cv1.sql
Hinweis Ersetzen Sie den Text „latin1” durch den
Zeichensatz welcher bei Ihnen bei der Überprüfung vom Zeichensatz angezeigt
wird.
danach noch:
sed 's/DEFAULT CHARSET=latin1/DEFAULT
CHARSET =utf8/g' typo3_cv1.sql > typo3_cv2.sql
Hinweis Ersetzen Sie den Text „latin1” durch den Zeichensatz
welcher bei Ihnen bei der Überprüfung vom Zeichensatz angezeigt wird.
um alle Tabellen vorerst auf „MyISAM“ Engine umzustellen geben wir noch ein:
sed 's/ENGINE=InnoDB/ENGINE=MyISAM/g'
typo3_cv2.sql > typo3_utf8.sql
Hinweis Damit ersetzen wir vorerst alle Engines durch
die „MyISAM“ DB Engine. Später werden einige von den Tabellen aber wieder auf
die „InnoDB“ zurückgesetzt.
WICHTIG Bei mir
funktionierte das Ersetzen nicht zuverläßig, wenn das Ergebnis nicht in eine
neue Datei geschrieben wurde. Daher wird hier beim „sed“ Befehl immer eine neue
Datei, wie z.B. „typo3_cv1.sql“, typo3_cv2.sql“ und „typo3_utf8.sql“ erzeugt, womit
die Ersetzungen sichergestellt werden.
6. Stellen Sie den
Standard Characterset und die Standard Kollation der Datenbank ein:
mysql -u root
-p -e "ALTER DATABASE database DEFAULT CHARACTER SET utf8 DEFAULT COLLATE
utf8_general_ci"
7. Datenbank jetzt
wieder zurücksichern mit:
mysql -u root -p database
< typo3_utf8.sql
8. Löschen aller
„temp_*“ Dateien aus dem Verzeichnis „typo3conf“ mit:
SLES11: ~ # rm typo3conf/temp_*
9. Danach führen
Sie folgende Einstellungen in TYPO3 Install Tool durch:
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET
NAMES utf-8;';
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
Hinweis Sie können sich in einem Linux Terminal
Fenster mit „locale“ anzeigen lassen wie die Sprachparameter für die
Standrdsprache korrekt lauten z.B. „de_DE.UTF8“. Mit dem Befehl „locale -a“
können Sie sich alle Sprachparameter anziegen lassen welche Ihr System
unterstützt. Ab TYPO3 4.6 werden diese Parameter nicht merh benötigt.
10. Kontrollieren Sie Ihre verwendeten
HTML Templatedateien (*.tmpl oder *.html), ob diese im Zeichensatzt UTF8
abgespeichert wurden. Ansonsten werden Ihnen später im Frontend die
Sonderzeichen (Umlaute), welche in diesen enthalten sind nicht richitg
angezeigt. Das gleiche gilt auch für die in Verwendung befindliche
„locallang.php“ Dateien.
11. Zum Abschluß sollten Sie jetzt
noch das TYPO3 Install Tool öffnen und unter „Database Analysis“ auf „COMPARE“
klicken. Alle Datenbanke welche jetzt eine falsche Engine eingestellt haben,
werden Ihnen jetzt angezeigt. Klicken Sie auf „select all“ und danach auf
„Write to database“ damit diese wieder richtig gestellt werden.

12. Löschen Sie jetzt noch alle „temp_CACHED_*“
Dateien aus dem Verzeichnis „typo3conf“ und alle Cache.
13. Damit sollte die Datenbank jetzt bereit sein und nur mehr mit dem „utf-8“ Characterset arbeiten.
Hinweis Wenn der Datenbank-Dump in ISO-8859-1 (Latin1) vorliegt und Sie diesen in UTF8 umwandeln wollen, damit die Sonderzeichen richtig konvertiert werden, so können Sie dazu den folgenden Befehl verwenden:
„iconv -f iso-8859-1 -t utf8 dump.sql > dump-iconv.sql“
Wenn die Ausgabe im Frontend von TYPO3 noch nicht das Charset utf-8 eingestellt ist, dies erfolgt normalerweise über die „localconf.php“ und die Option „[BE][forceCharset] = utf-8“, können Sie trotzdem die Ausgabe von Texten in UTF-8 mit einem TypoScript Setup eingestellen.
Schreiben Sie folgende Zeile in den Setup Bereich des Root Templates von TYPO3:
|
… ##############UTF8
Zeichensatz festlegen############## …. |
Hinweis Die Einstellung wird nicht mehr benötigt wenn im TYPO3 Install Tool „[BE][forceCharset] = utf-8“ eingestellt ist. Auch die Eintellungen „config.metaCharset = utf-8“ ist nur mehr bei speziellen TYPO3 Installationen notwendig, wo das Rendering der Seite noch nicht in UTF-8 erfolgt aber die Ausgabe in UTF-8 erfolgen soll.
Bei manchem schwerwiegeneden Datenbankfehler hilft nur mehr eine Reparatur der MySQL Datenbank. Dies können Sie mit folgendem Befehl durchführen:
|
SLES11:~ # mysqlcheck database --auto-repair -u root -p Enter password: rpw.backend_layout OK rpw.be_groups OK rpw.be_sessions OK rpw.be_users OK rpw.cache_extensions OK … |
Hinweis Ersetzen Sie den Text „database“ durch den Namen Ihrer Datenbank.
Beim Aufruf der Datei mit dem URL: http://<domainname>/<typo3dir>/fileadmin/db_utf6_fix.php
kommt immer nur die Meldung „Access denied“.
Die Dateizugriffrechte wurden schon kontrolliert und stehen auf „744“. Es wurde aber auch schon versucht „777“ auf die Datei „db_utf8_fix.php“ zu vergeben. Es kommt aber immer nur „Access denied“.
Abhilfe:
Der Fehler ist bei mir unter TYPO3 4.6 aufgetreten, da gibt
es eine keline Änderung in er „localconf.php“ Datei ganz am Anfang steht:
|
<?php if (!defined ('TYPO3_MODE')) { die ('Access denied.'); } $TYPO3_CONF_VARS['SYS']['sitename'] = 'RealPowerWork Homepage'; … |
Remarken Sie die ersten drei Zeilen damit Sie das externe PHP-Skrip ausführen können.
|
SLES11:~ # mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) |
Abhilfe:
Geben Sie für den Login am MySQL Server auch noch die Passwort Option „-p“ an damit Sie nach dem Passwort gefragt werden.
SLES11:~ # mysql -u root -p
Sollte der Fehler immer noch auftreten kontrollieren Sie, ob Sie das richtige Passwort eingegeben haben.
Wenn Sie eine vorhandene TYPO3 Datenbank auf die neue Version 4.5 upgedatet haben, kann es sein, dass von Ihrer alten Installation noch falsche Sortierungen vorhanden sind.
Wenn der Datenbankname „cms“ ist, so gehen Sie wie folgt vor um die Sortierung der Tabellen anzuzeigen.
mysql > use cms;
mysql > show table status;
|
… | be_groups | MyISAM | 10 | Dynamic | 5 | 1534 | 7672 | 281474976710655 | 3072 | 0 | 6 | 2008-02-21 22:46:43 | 2008-02-24 17:22:18 | 2008-02-21 22:46:43 | latin1_german2_ci | NULL | | | | be_sessions | MyISAM | 10 | Dynamic | 1 | 88 | 380 | 281474976710655 | 2048 | 292 | NULL | 2008-02-21 22:46:43 | 2008-02-26 23:52:32 | NULL | latin1_german2_ci | NULL | | | | be_users | MyISAM | 10 | Dynamic | 392 | 211 | 84388 | 281474976710655 | 16384 | 1520 | 393 | 2008-02-24 20:10:59 | 2008-02-26 23:47:22 | 2008-02-24 20:10:59 | latin1_german2_ci | NULL | | | … |
Wenn sie nur deutsche Zeichen im TYPO3 verwenden und keine mehrsprachige Website betreiben wollen, sowie als Collation „latin1_german2_ci“ verwendet wird, brauchen sie bei obiger Ausgabe keine Änderungen vornehmen.
Ist der MySQL auf den Zeichensatz „utf8“ die Sortierung aber noch auf „latin1_german1_ci“, so werden Sie früher oder später Probleme bekommen. Die Behebung dieses Fehler ist sehr mühsam den Sie müssten manuell die „Kollation“ in allen Tabellen und Feldern ändern. Der Zeitaufwand dafür ist enorm (ca. 2 Stunden). Wenn es sich nur um eine Testdatenbank handelt erstellen Sie die Datenbank neu und stellen Sie „Kollation“ richtig ein oder gehen Sie wie unter Kapitel „Umstellung vom Zeichensatz von <latin1> auf <utf8>“ vor.
Die Datenbank wurde in UTF8 Konvertiert und dann wieder zurück gesichert. Nach dem Rücksichern werden alle Texte mit Sonderzeichen (Umlaute, Apostrophe, etc) nicht richtig angezeigt.
Ursache:
Manchmal führt das setzen von „SET NAMES utf8;” und “SET CHARACTER SET utf8;” zur nochmaligen Konvertierung der vorhandenen Texte, welche schon im UTF8 Format sind. Dadurch gehen die Sonderzeichen in den Texten verloren. In diesen Fall entfernen Sie diese Zeilen wieder.
Abhilfe:
Entfernen Sie im TYPO3 Install Tool wieder den Eintrag „$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8; SET CHARACTER SET utf8;';“ und aktualsierren Sie die Website. Sollte diese zu keiner Änderung führen dann müsse Sie die Rücksicherung nochmals ausführen.
Nach Umstellung aller Tabellen auf die Engine „MyISAM“ kommt im TYPO3 Install Tool bei „Databse Analysis“ wenn auf „COMPARE“ geklickt wird immer folgender Fehler bei fast allen „cache_“ Tabellen angezeigt:
|
ALTER TABLE cache_hash ENGINE=InnoDB Current value: ENGINE=MyISAM …. |
Ursache:
In der Datei „/t3lib/stddb/tables.sql“ z.B. steht bei Datenbanken, wie „cache_hash“, „cache_imagesize“, etc. zusätzlich immer der Text „ENGINE=InnoDB“, damit diese Tabellen mit der „InnoDB“ Engines angelegt werden. Alle anderen Datenbanken werden mit der im MySQL Server als Standard Engine (DEFAULT) festgelegten angelegt.
Abhilfe:
Gehen Sie in das TYPO3 Install Tool auf den Menüpunkt „Database Analyser“ und führen Sie nochmals einen „COMPARE“ der Datenbank durch.

Klicken Sie danch auf die „Write to database“ Schaltfläche.
Wenn die obigen Zeilen auch nach einem “Write to database” bei einem nochmaligen „COMPARE“ angezeigt werden, dann liegt das Problem meist darin, dass die Datenbank „InnoDB“ Engine nicht unterstützt. Dies kann man nochmal überprüfen, indem man sich in PhpMyAdmin einloggt und die angezeigten Tabellen ansieht, man schaut ob im DropDown Feld unter Typ die „InnoDB“ vorhanden ist. Dies könnte z.B. bei manchen Internet Service Provider (wie z.B. Hosteurope, Worl4You) der Fall sein. Meißt bekommt man diese dann nur gegen Aufpreis oder Umstieg auf ein andere Web-Paket.
Das fehlende Update der Tabellen scheint aber keine weiteren Fehler hervorzurufen und kann somit ignoriert werden. Ich vermute, dass dies auch reine Performance Optimierung war.
Im TYPO3 Install Tool bei „Databse Analysis“ wenn auf „COMPARE“ geklickt wird immer folgender Fehler bei fast allen Tabellen angezeigt:
|
ALTER TABLE cache_hash ENGINE=InnoDB Current value: ENGINE= ALTER TABLE cachingframework_cache_hash ENGINE=InnoDB; Current value: ENGINE= …. |
Ursache:
Dieser Fehler tritt auf wenn die Datenbank in UTF-8 ersetllt wurde aber im TYPO3 Install Tool die Option „[SYS][multiplyDBfieldSize] = 2“ eingestellt wurde.
Abhilfe:
Ändern Sie im TYPO3 Install Tool die Option auf „[SYS][multiplyDBfieldSize] = 1“, dann sollte der „ALTER TABLE..“ wieder normal arbeiten.
Bevor Sie das TYPO3 Install Tool starten sollten Sie sicherstellen, dass für PHP genügend Speicher zur Verfügung steht. Bei einer SLES11 Standardinstallation von PHP, ist der verfügbare Hauptspeicher für Skripte beschränkt auf 128 MB.
Daher ist bei SELES11 keine Änderung vom Speicherlimit mehr notwendig.
Hinweis Bei älteren SLES Installation oder bei manchen Internet Service Provider (ISP), ist der Speicher aber nur auf 8 MB eingestellt. Dieser reicht aber für TYPO3 nicht aus und es kommt zu einer Fehlermeldung:
|
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 2054 bytes) in typo.tanmar.de/httpdocs/typo3/t3lib/class.t3lib_install.php on line 596 |
Um diesen Fehler zu umgehen, muss der verfügbare Speicher für PHP-Skripte über die Option „memory_limit“ in der Datei „/etc/php5/apache2/php.ini“ erhöht werden.
TYPO3 ab Version 4.x. setzt mindestens 16 MB voraus. Sie sollten das Speicherlimit aber gleich auf 64 MB erhöhen da auch dieser Wert für viele Extension zu gering ist.
Erstellen Sie dazu im SLES11 Verzeichnis Ihrer TYPO3 Installation (wenn nicht schon vorhanden) eine Datei mit dem Namen „.htaccess“ und fügen Sie folgende Zeile ein.
|
… php_admin_value memory_limit 64M … |
WICHTIG Vorsicht wenn Sie eine vorhandene „_.htaccess“ umbenennen und den obigen Eintrag vornehmen. Es könnten in dieser Datei Einstellungen aktiviert sein, welche zu einer Fehlfunktion der ganzen Website führen. Sollten Sie nicht sicher sein, erstellen Sie eine neue Datei und fügen nur den oben angezeigten Eintrag ein.
WICHTIG In der TYPO3 Version 4.x.x wurde der Zugriff auf das Install Tool geändert, d.h. man muss jetzt nicht mehr das PHP Script bearbeiten. Es reicht eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „typo3conf“ Ihrer Installation zu kopieren.
SLES11:~ # touch /srv/www/htdocs/cms/typo3config/ENABLE_INSTALL_TOOL
Starten Sie jetzt das Install Tool von TYPO3 mit der Eingabe von http://localhost/cms. Wobei „cms“ Ihr Dokument Verzeichnis ist. Wenn Sie kein eigenes Installationsverzeichnis verwenden lassen Sie „cms“ einfach weg oder wenn Sei ein anderes Installationsverzeichnis für TYPO3 verwenden geben Sie dieses ein.
Hinweis Wenn Sie nicht direkt am Server arbeiten (mit Server Browser), müssen Sie anstelle des „localhost“ den Hostnamen und Domänennamen des TYPO3 (Apache) Servers verwenden. Dies könnte z.B. http://www.<ihredomäne>.<domainsuffix>/cms sein. Der Domainsuffix kann ein Ländercode z.B. „de“, „at“ etc. oder auch „com“, „net“, „org“, etc. sein. Je nach Installation müssen Sie das Installationsverzeichnis (hier „cms“) angeben oder auch nicht.

Die Installation erfolgt jetzt in drei Schritten welche unten in Detail erklärt werden. Sollte Fehler auftreten suchen Sie am Ende dieses Kapitels unter „Fehler im Install Tool“.
Hinweis Es wird im nächstmögliche Abschnitt der Beschreibung der einzelnen Schritte von „TYPO3 Install Tool“ immer wieder versucht auf beide Varianten einer Installation, als Standalone-Server (Privat, Firmenserver) oder als Server bei einen Internet Service Provider (ISP) einzugehen. Wobei es in diesem Zusammenhang natürlich schwierig ist alle Eventualitäten oder Konfigurationen zu berücksichtigen.





Klicken Sie auf „Configure TYPO3“ (Recommended) damit dass TYPO3 Install Tool mit dem Auswahlmenü geladen wird. Wählen sie aus dem Menü „Basic Configuration“.
In dieser Ansicht bekommen Sie den Status der Konfiguration angezeigt es sollte hier nur grüne Häkchen angezeigt werden. Gehen Sie an das Ende dieser Seite dort finden Sie folgende Eingabefelder.
Wählen Sie jetzt aus dem Menü „All Configuration“ um die unten angeführten Werten zu finden können Sie mit „Suchen“ aus dem Browser Menü arbeiten.
Die Installation des TYPO3 Basissystems ist damit abgeschlossen. Sie können sich nun mit http://localhost/cms/typo3 das TYPO3 Backend aufrufen.
Geben Sie als „Username:“ admin und als „Password:“ password
ein.
WICHTIG Ändern Sie das Passwort sofort nach dem einloggen im Backend. Es wird dafür im Backend eine Warnung angezeigt Sie brauchten dort nur auf den Text „Edit this account“ klicken. Aus der Navigation können Sie das Passwort unter User tools‑>User settings mit den Feldern „New password“ und „New password again“ geändert werden.
Hinweis Sie sollten das eingegeben Passwort für den Benutzer „admin“ nicht vergessen, da dieser Benutzer der einzige Benutzer mit uneingeschränkten Rechten ist.
Wenn Sie das TYPO3 Install Tool später für Ihre Website
nochmals starten wollen gehen Sie wie folgt vor.
1. Kopieren oder
erstellen Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ im
Verzeichnis „typo3conf“ Ihrer Installation.
Hinweis Wenn Ihre TYPO3 Site bei einen Internet
Service Provider (ISP) erstellt wurde führen Sie einen Upload von der Datei
„ENABLE_INSTALL_TOOL“ durch. Bei manchen ISP wird der Aufruf des TYPO3 Install
Tools aber nicht unterstützt.
2. Starten Sie
jetzt das Install Tool von TYPO3 mit der Eingabe von http://localhost/cms/typo3/install oder mit http://www.<ihredomäne>.<domainsuffix>/cms/typo3/install.
Wobei „cms“ Ihr Dokument Verzeichnis ist. Wenn Sie kein eigenes Installationsverzeichnis
verwenden lassen Sie „cms“ einfach weg oder wenn Sei ein anderes
Installationsverzeichnis für TYPO3 verwenden geben Sie dieses ein.
3. Geben Sie das Passwort für das Install Tool ein.

Abhilfe:
Wenn Sie in der Adressleiste Ihres Browser nach Eingabe von http://localhost/cms folgendes sehen nur „http://localhost/cms/“ und nicht den kompletten Pfad sehen „http://localhost/cms/typo3/install/index.php?mode=123&step=1&password=joh316“
Dann funktionieren vorerst einmal die SymLinks auf dem
Apache Server nicht. Gehen Sie wie folgt vor:
|
SLES11:~ # cd /etc/apache2 SLES11: /etc/apache2 # vi default-server.conf |
Suchen Sie in der Datei die Rubrik <Directory „/srv/www/htdocs“>. In dieser gibt die Option „Options none“, ändern Sie die Option auf „Options +FollowSymLinks“ und speichern Sie die Datei wieder ab.

Starten Sie danach den Apache Server neu mit:
|
SLES11: /etc/apache2 # rcapache2 restart |
Schließen Sie den Browser und versuchen Sie es nochmals.
Die Datei „ENABLE_INSTALL_TOOL“ wurde wie gefordert in das Verzeichnis „typo3conf“ der TYPO3 Installation kopiert. Doch jedes Mal beim Aufruf vom „TYPO3 Install Tool“ kommt folgende Fehlermeldung.

Ursache:
Kontrollieren Sie das Datum und die Uhrzeit der Datei „ENABLE_INSTALL_TOOL“ und kontrollieren Sie das Datum und die Uhrzeit am TYPO3 Server. Wenn das Datum und die Uhrzeit mehr als eine Stunden auseinander liegen, dann erkennt dies das „TYPO3 Install Tool“ und die Datei „ENABLE_INSTALL_TOOL“ wird automatisch gelöscht.
Abhilfe:
Wenn Die Uhrzeit auf einen lokalen TYPO3 Server falsch ist, so berichtigen Sie auf dem Server die Uhrzeit und stellen Sie die richtige Zeitzone ein.
Wenn es sich um einen Server bei einem Provider handelt haben Sie meist keinen Einfluss auf die Uhrzeit. In diesem Fall müsste die Datei über einen FTP Client direkt am Server erstellen oder sie erstellen Sie lokal indem Sie die lokale Uhrzeit des PC verändern.
Beim Aufruf vom „TYPO3 Install Tool“ kommt die Fehlermeldung „TYPO3 Installation Error: The following PHP modules(s) is/are missing: gd, mysql, zlib“

Ursache:
Sie haben Ihren Linux Server nicht korrekt für die Verwendung von TYPO3 vorbereitet. TYPO3 setzt einige PHP Module voraus die Sie vor dem starten des „TYPO3 Install Tool“ installieren müssen.
Abhilfe:
Installieren Sie über den YaST die Programmpakete „gd“, „php5-gd“, „php5-mysql“ und „php5-zlib“.
Wenn sie das TYPO3 Install Tool geöffnet haben und länger Zeit nicht eingeben, so wird die Sitzung automatisch geschlossen und die Datei „ENABLE_INSTALL_TOOL“ gelöscht. Nach neu Erstellung der Datei „ENABLE_INSTALL_TOOL“ wir nachfolgende Meldung angezeigt.

Abhilfe:
Der Durchlauf vom „TYPO3 Install Tool“ wurde abgebrochen, d.h. es wurde auch das Standardpasswort noch nicht verändert und ist noch immer „joh316“.
Nachdem das TYPO3 Install Tool durchgelaufen ist, kommt beim Aufruf der TYPO3 Website http://localhost/cms folgende Fehlermeldung.

oder in Text:
|
Uncaught TYPO3 Exception No pages are found on the rootlevel!
RuntimeException thrown in file /srv/www/htdocs/typo3_src-4.5.0/typo3/sysext/cms/tslib/class.tslib_fe.php in line 938. |
Ursache:
Dies ist einen normale TYPO3 Meldung nachdem TYPO3 neu installiert wurde und noch keine Website oder Templates installiert sind.
Abhilfe:
Im Moment braucht uns diese Fehlermeldung nicht stören, da in den nachfolgenden Kapiteln noch die Root Websites, und das Root-Template für TYPO3 erstellt werden.
Nachdem das TYPO3 Install Tool durchgelaufen ist, kommt beim Aufruf der TYPO3 Website http://sles11/cms folgende Fehlermeldung. Wobei „SLES11“ der lokale Hostname des Servers ist.

Ursache:
Dies ist einen normale TYPO3 Meldung nachdem TYPO3 neu installiert wurde und noch keine Website oder Templates installiert sind.
Abhilfe:
Im Moment braucht uns diese Fehlermeldung nicht stören, da in den nachfolgenden Kapiteln noch die Root Websites, und das Root-Template für TYPO3 erstellt werden.
Wenn Sie einen vorhandene Installation von TYPO3 auf einen anderen Server umsiedeln wollen, egal ob sich dabei um einen lokalen Server oder einen Server bei einen Internet Service Provider (ISP) handelt, so führen Sie am besten einen TYPO3 Update Installation durch. Wenn Sie eine vorhandene TYPO3 Installation von einer vorherigen Version von TYPO3 auf eine aktuelle Version von TYPO3 updaten wollen, führen Sie eine TYPO3 Update Installation aus.
WICHTIG Bei ältern Verisonen als TYPO3 4.1 müssen Sie zuerst auf eine aktuelle Version von 4.1.x Updaten, erst danach können Sie einen Update auf die Version 4.5.x durchführen.
Hinweis Sie sollte eine Update Installation nicht auf eine Produktiv Server der im Internet steht ausführen, sondern eine Sicherung vom Produktiv System durchführen, und die Installation dann auf einem lokalen Standalone Server durchführen. Dadurch verhindern Sie, dass bei Fehlern des Updates der Produktiv Server Offline geht und Sie haben außerdem Zeit die Update Installation ausgiebig zu testen. Wenn die Testinstallation einwandfrei Funktioniert führen von dieser wieder eine Datensicherung durch und können dann damit den Produktiv Server updaten.
WICHTIG Ein Update auf die neueste TYPO3 4.6 sollten Sie mit Vorsicht durchführen. Voraussetzung ist zuerst einmal die PHP 5.3 Version. Außerdem wurden in dieser Version alle schon als „deprecated“ (veraltet) angekündigten Core Änderungen eingebaut. D.h. es gibt z.B die Variable „GPvar“ nicht mehr diese soll jetzt mit „_GP“ aufgerufen werden. In diesem Zusammenhang funktionieren Extensions wie „ve_guestbook“ nicht mehr.
Um eine vorhanden TYPO3 Installation auf einen anderen Server zu übersiedeln oder um auf eine neue Version upzudaten gehen Sie wie folgt vor.
1. Sichern Sie
zuerst von Ihrer alten Datendateien Ihrer TYPO3 Installation. Dabei handelt es
sich um folgende Verzeichnisse oder Dateien unter dem Installationsverzeichnis
von TYPO3:
„fileadmin“ à
komplett sichern
„typo3config“ à komplett sichern,
da sich hier auch die Dateien der installierten Extension
befinden
„uploads“ à
komplett sichern
Hinweis Bei einer TYPO3 Installation welche sich auf
einem Server eines Internet Service Providers (ISP) befindet, verwenden Sie
einen FTP-Client um die Dateien von der alten Installation zu sichern.
2. Sicherung der
alten TYPO3 Datenbank durchführen. Genaue Anleitung im Kapitel „6.2 Update der
TYPO3 MySQL Datenbank“.
3. Neues
Installationsverzeichnis für TYPO3 Installation anlegen:
SLES11:~ # mkdir /srv/www/htdocs/newcms
Hinweis Bei TYPO3 Installation welche sich auf einem
Server eines Internet Service Providers (ISP) befindet, wird meist nur eine
Installation einer TYPO3 Instanz zugelassen. D.h. wenn Sie in der Paketauswahl
des Providers auf die neue TYPO3 Version umstellen, werden alle Installationen
auf die neue TYPO3 Source Paket umgestellt.
WICHTIG Damit Sie
keine böse Überraschung bei der Umstellung erleben sollten Sie auf alle Fälle
vor der Umstellung auf einen neue TYPO3 Version bei einem ISP, ihre vorhandene
Installation wie in den Punkten 1-2 angeführt durchführen.
4. Kopieren Sie
alle Dateien einen TYPO3 Dummy Paketes in das neue TYPO3
Installationsverzeichnis.
SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # tar xzf dummy-4.5.15.tar.gz
SLES11:/srv/www/htdocs # cp -R dummy-4.5.15 newcms
WICHTIG Bei einer
TYPO3 Installation, welche sich auf einem Server eines Internet Service
Providers (ISP) befindet, brauchen Sie dies nicht durchführen. Die Dateien
sollten schon bei der TYPO3 Paketauswahl des Providers installiert werden.
5. Kopieren Sie die
TYPO3 Datendateien aus der Sicherung in das neue TYPO3
Installationsverzeichnis:
„fileadmin“ à
komplett zurücksichern und überschreiben.
WICHTIG Bevor Sie
jetzt das Verzeichnis „typo3conf“ zurücksichern, sollten Sie die vorhandene
Datei „localconf.php“ im neuen TYPO3 Installationsverzeichnis umbenennen oder
sichern.
„typo3config“ à komplett
zurücksichern und überschreiben.
„uploads“ à
komplett zurücksichern und überschreiben.
6. Vergeben Sie die
Berechtigungen auf die neu kopierten Dateien
SLES11:~ # cd srv/www/htdocs/newcms
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp fileadmin
SLES11:/srv/www/htdocs/newcms # chmod -R 770 fileadmin
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp typo3conf
SLES11:/srv/www/htdocs/newcms # chmod -R 770 typo3conf
SLES11:/srv/www/htdocs/newcms # chown -R wwwrun:ftp uploads
SLES11:/srv/www/htdocs/newcms # chmod -R 770 uploads
Hinweis Es wurden hier die Berechtigungen mit „770“
und auch eine Gruppe „ftp“ definiert damit später auch mit einem FTP Client
eine Bearbeitung möglich ist.
7. Entfernen Sie
die alten Cache Dateien aus dem „typo3config“ Verzeichnis.
SLES11:/srv/www/htdocs # rm temp_CACHED_*
3. Neue MySQL Datenbank
für die neue lokale TYPO3 Installation erstellen.
|
SLES11:~ # mysql
-u root –p mysql > create user 'newtypo3'@'localhost' identified by 'meinpasswort'; mysql > grant all on newcms.* to 'newtypo3'@'localhost'; |
WICHTIG Wenn Sie einen anderen Namen
für Ihre TYPO3 Datenbank verwenden wollen so ersetzten Sie den Text „cms“ durch
Ihre Datenbank. Ersetzen Sie auch den Benutzernamen „newtypo3“ und das Passwort
„meinpasswort“ durch die von Ihnen gewünschten Benutzernamen und Passwort.
Hinweis Bei TYPO3 Installation welche sich auf einem
Server eines Internet Service Providers (ISP) befindet, wird die MySQL
Datenbank meist über eine Web-Konsole des Providers erstellt.
8. Jetzt müssen
noch die Datei „localconf.php“ im Verzeichnis „typo3conf“ auf die
richtigen Datenbankeinstellungen der neuen TYPO3 Installation ändern. Ersetzen
Sie aus der im Schritt 4. umbenannten oder gesicherten „localconf.php“
folgende Abschnitte der nun aktuellen „localconf.php“:
|
… $TYPO3_CONF_VARS['SYS']['compat_version']
= ‘4.5‘; //abhängig
von der TYPO3-Version |
Hinweis
Ändern Sie „neuerHost“ auf den neuen Hostnamen wenn Sie die TYPO3
Installation auf einen anderen Server übersiedelt haben.
9. Der zweite
Bereich in der „localconf.php“ welcher bei einer Umsiedlung auf einen anderen
Server eventuell geändert werden muss, sind die Einstellungen für das
installierte Grafikprogramm. Je nach installiertem Grafikprogramm, müssen dort
Anpassungen vorgenommen werden.
|
$TYPO3_CONF_VARS['GFX']['im_path'] = '/usr/local/bin/'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['im_path_lzw'] = '/usr/local/bin/'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im4'; $TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite'; $TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = 0; |
Hinweis Bei TYPO3 Installation welche sich auf einem Server eines Internet Service Providers (ISP) befindet, entnehmen Sie die Einstellungen der „localconf.php“ Datei welche nach der Paketauswahl beim Provider erstellt wird.
10. Rücksicherung der alten MySQL
Datenbank in die neu MySQL Datenbank durchführen. Die Genaue Anleitung dazu im
Kapitel „6.2 Update der TYPO3 MySQL Datenbank“.
11. Starten Sie jetzt das TYPO3
Install Tool wie in Kapitel „5.7.3 TYPO3 Install Tool später nochmals starten“
erklärt.
TYPO3 Install Tool > Update
Wizard starten, den Anweisungen auf dem Bildschirm folgen.

Hinweis Wenn Sie am Ende folgende Anzeige sehen,
wurden alle Schritte des Update Wizard korrekt ausgeführt und Sie können gleich
auf den Link „COMPARE DATABASE“ klicken um den Datenbank-Update auszuführen.
12. TYPO3 Install Tool > Database
Analyzer > Update required tables COMPARE. In diesem Schritt
werden die notwendigen Tabellen/Felder der vorhandenen Datenbank hinzugefügt.
Gleichzeitig bereinigen Sie Ihre Datenbank von den nicht benötigten Inhalten. Markieren
Sie immer alle vorgeschlagenen Änderungen und klicken sie auf die Schaltfläche,
solange bis keine Fehler mehr angezeigt werden.
13. Starten Sie jetzt das TYPO3 Backend
und loggen Sie sich ein. Gehen Sie dann in der Navigation auf DB Überprüfung > Globalen Referenz-Index prüfen
und aktualisieren > Referenzindex überprüfen.
Läuft alles tadellos, wird ein Text Ähnlich „318 records from 30 tables were
checked/updated.“ angezeigt.
14. Wählen Sie im Backend jetzt
„Extension Manager“ und führen Sie noch ein Update vom „Translation handling“
aus.

15. Danach klicken Sie auf „Update
from Repository“ um alle aktuellen Sprachdateien für die gewählten Sprachen
zu laden.
16. Kontrollieren Sie jetzt noch ob
die „Statischen Templates“ unter „Templates“ auf Ihrem Root Template
unter „Vollständigen Template-Datensatz bearbeiten“ im Reiter „Enthält“ richtig
eingebunden wurden.

17. Ihre TYPO3 Installation ist nun
upgedatet. Neues Backend-Design: die Extension "TYPO3 skin" via
EXT-Manager installieren.
18. Sie können jetzt noch im Backend von TYPO3 ein Update der installierten Extension durchführen. Siehe Kapitel „12.3 Update von einer installierten Extension“ wie Sie dies durchführen.
Wenn Sie vor dem Problem stehen, eine schon vorhanden alte TYPO3 Installation, welche eine alte MySQL Datenbank verwendet z.B. V3.x.x oder V4.x.x auf eine aktuellen Datenbankversion upzudaten, so gehen Sie wie folgt vor. Oder, Sie können dieses Kapitel auch verwenden, wenn eine alte TYPO3 Datenbank einen falschen Zeichensatz wie z.B. „latin1 “ verwendet und Sie auf den Zeichensatz „utf8“ umstellen wollen.
Spätestens, wenn Probleme mit der Darstellung von Umlauten auftauchen oder Mehrsprachigkeit erforderlich ist, bietet sich das „utf8“ Format für die Datenbank an. Das „utf8“ Format ermöglicht eine globale Zeichenkodierung im Internet. Bei allen neueren TYPO3 Versionen ab V4.5 sollte immer schon der „utf8“ Zeichensatz verwendet werden.
1. Erstellen Sie
eine neue MySQL5 Datenbank mit „utf8“. Wählen Sie mit phpMyAdmin unter „Optionen“
– „Kollation“ die „utf8_general_ci“ aus.
2. Führen Sie eine
Datensicherung der alten TYPO3 Datenbank durch. Bei einen lokalen Server mit
„mysqldump –u root –p cms > cms-latin1.sql“
oder bei einen gehosteten Server mit „mysqldumper“ diesen könne Sie von der
Website http://www.mysqldumper.de
downloaden und entpacken.
Kopieren Sie das Programm dann per FTP auf Ihren Webserver in zwei neue
Verzeichnisse auf dem Webserver eines für die alte Datenbank. „mysqldumperALT“
und eines für die neue Datenbank „mysqldumperNEU“.
3. Konfigurieren
die beiden „mysqldumper“ Programm mit den Zugangsdaten für Ihren MySQL
Datenbank. Wählen Sie bei „mysqldumperALT“ die alten MySQL Datenbank und bei
„mysqldumperNEU“ die neue MySQL Datenbank aus. Nähere Details zur Einrichtung
vom „mysqldumper“ entnehmen Sie aus dem Verzeichnis „ReadMe“ und der Datei
„install_deutsch.txt“.
4. Holen
Sie sich die Backupdatei auf Ihren lokalen PC. Machen Sie eine Kopie davon und
bewahren Sie diese an einen sicheren Ort auf. Diese könne Sie dann verwenden
wenn bei der Umstellung etwas schief gehen sollte.
5. Entpacken Sie
die Datei mit dem „7-zip“ Programm: http://www.7-zip.org/download.html
Bearbeiten Sie die entpackte Datei mit einem Programm wie TextPad
(nicht Microsoft Word oder Editor!). Download von: http://www.textpad.com/download/index.html
Speichern Sie die Datei dann im „utf8“ Format ab.
Hinweis Sehen Sie sich im Kapitel „5.4.5 Konvertierung
einer vorhanden Datenbank in „utf-8“ an welche Texte ersetzt werden müssen. Die
Texte finden Sie bei den „sed“ Befehlen. Ersetzen dann immer den ersten Texteil
nach dem `s/ bis zum nächsten / durch den Textteil nach dem /
bis zum /g`
6. Dieses Datei neu
GZ-komprimieren mit dem Programm „7-zip‘“, mit „mysqldumperNEU“ in die NEUE
MySQL Datenbank importieren. Dies erfolgt im „mysqldumper“ mit „Datei
hochladen“ und danach mit „Wiederherstellen“.
7. Nun braucht man
nur noch zu “switchen”. d.h. TYPO3 zu sagen, dass es die neue Datenbank
verwenden soll (die alte Datenbank kann man im Anschluss aufheben oder – nach
entsprechender Prüfung der Funktionsfähigkeit der neuen Datenbank - löschen).
Switchen der Datenbank:
Dazu holte man sich „/typo3conf/localconf.php“ vom Server auf den eigenen
Rechner macht eine Kopie und passt in dieser den Zugriff auf die Datenbank an:
|
… |
Hinweis Wenn man TYPO3 auf utf8
umschaltet, so kann der unangenehme Effekt auftreten, dass die TypoScripts
(Constants, Setup) bzgl. Umlaute korrumpiert werden. Deshalb ist es ratsam,
sich den Code vor dem Umstellen aus der alten Installation rauskopieren, um ihn
im Anschluss wieder herstellen zu können.
8. Bevor
man die „localconf.php“ mit den neuen Datenbankwerten auf den Server lädt, muss
man noch via phpMyAdmin alle Tabellen leeren (nicht löschen!), die „cache“ im
Namen haben (cache_extensions, cache_hash, cache_imagesizes,…), das sind
derzeit 7 Stück. Macht man das nicht, so meldet TYPO3 nach dem Upload der neuen
localconf.php freudig: „No
Template found!“
9. Jetzt ist noch TYPO3 selbst anzupassen.
Via TYPO3 Install Tool erschließt man den Bereich „All Configuration“ und trägt
ein:
[BE][forceCharset] = utf-8
Hinweis
Durch diesen Eintrag werden bei den neuen TYPO3 Versionen auch gleich
folgende Einstellungen im Root Template durchgeführt und müssen daher nicht
mehr manuell im Setup Bereich eingetragen werden:
config.renderCharset =
utf-8
config.additionalHeaders = Content-Type:text/html;charset=utf-8
WICHTIG Bei den
neuen TYPO3 Versionen sind die Einträge in der „[SYS][setDBinit]=“ wie z.B. „SET NAMES utf8;” “SET CHARACTER SET utf8;” etc. nicht mehr
notwendig, da die DBAL Extensions jetzt den Zugriff auf die Datenbanken
durchführt. Sollte diese Einträge vorhanden sein, kann es zur nochmaligen
Konvertierung der vorhandenen Texte, welche schon im UTF8 Format sind kommen.
Dadurch gehen die Sonderzeichen in den Texten verloren. In diesem Fall
entfernen Sie diese Zeilen wieder.
10. WICHTIG Dieser Eintrag
ist nur notwendig wenn Ihre Datenbank noch nicht den UTF-8 Zeichesatz besitzt,
Sie aber eine UTF-8 Ausgabe erzeugen wollen:
[SYS][multiplyDBfieldSize] = 2
(für europäische Sprachen, 3 für asiatische Sprachen)
Hinweis Sauberer ist es aber, wenn die Datenbank in
den UTF-8 Zeichensatz umgewandelt wird, da Sie ansonsten immer wieder Problem
mit Extensions oder bei Update von TYPO3 auftreten. Die Option
„[SYS][multiplyDBfieldSize]=2“ dient dazu, auf einer für Latin1-Zeichensätze
konfigurierte MySQL-DB auch UTF8-codierte Textdaten zu speichern. Ein Zeichen
in UTF8 kann mehr als 1 Byte lang sein; um zB 50 UTF8-codierte Zeichen in einem
Feld zu speichern, muss dieses - je nach Menge von Umlauten und anderen
Sonderzeichen, auch mal 80 Bytes lang sein.
11. Kontrollieren Sie Ihre verwendeten HTML Templatedateien (*.tmpl oder *.html), ob diese im Zeichensatzt UTF8 abgespeichert wurden. Ansonsten werden Ihnen später im Frontend die Sonderzeichen (Umlaute), welche in diesen enthalten sind nicht richitg angezeigt. Das gleiche gilt auch für die in Verwendung befindliche „locallang.php“ Dateien.
12. Nun die Webseite
prüfen. Es kann insbesondere natürlich sein, dass man bei der manuellen
Korrektur der korrumpierten Daten aus der der alten MySQL DB in TextPad etwas
übersehen oder fehlerhaft korrigiert hat.
13. Nach der Überprüfung ist die Umstellung geschafft, war doch ganz einfach.
Dieses Kapitel führt durch eine Update Installation der TYPO3 Source Dateien auf einem lokalen Server. Wenn Sie ein TYPO3 Installation von V3.8.x updaten müssen Sie zuerst auf die V4.1 updaten.
1. Bevor Sie mit
dem Typo3 Update beginnen, sichern Sie die MySQL-Datenbank und gesamte Datei-
und- Verzeichnisstruktur Ihrer Website.
2. Die neuen TYPO3
Source-Pakte „typo3_src-4.5.15.tar.gz“ auf der gleichen Verzeichnisebene
entpacken in der die alten Source-Pakete der „typo3_src-4.x.x“ gelegen sind.
SLES11:~ # cp typo3_src-4.5.15.tar.gz /srv/www/htdocs
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # tar -xzf typo3_src-4.5.15.tar.gz
3. Gehen Sie in das
Installationsverzeichnis Ihrer TYPO3 Installation und führen Sie folgende
Löschungen durch.
SLES11: /srv/www/htdocs # cd cms
SLES11: /srv/www/htdocs/cms # rm -R index.php media showpic.php t3lib tslib
typo3 typo3_src
4. Neue Symlinks auf
das neue Source Paket erstellen.
SLES11: /srv/www/htdocs/cms # ln -s ../typo3_src-4.5.15 typo3_src
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/t3lib t3lib
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3
SLES11: /srv/www/htdocs/cms # ln -s typo3_src/index.php index.php
5. Caches
im Verzeichnis „typo3conf“ löschen.
SLES11:/srv/www/htdocs/cms # rm typo3conf/temp_CACHED_*
6. TYPO3 Install Tool > Update Wizard
starten, den Anweisungen auf dem Bildschirm folgen.
7. TYPO3 Install Tool
> Database Analyzer > Update required tables COMPARE. In
diesem Schritt werden die notwendigen Tabellen/Felder der vorhandenen Datenbank
hinzugefügt. Gleichzeitig bereinigen Sie Ihre Datenbank von den nicht
benötigten Inhalten. Markieren Sie immer alle vorgeschlagenen Änderungen und
klicken sie auf die Schaltfläche, solange bis keine Fehler mehr angezeigt
werden.
8. Starten Sie
jetzt das TYPO3 Backend und loggen Sie sich ein. Gehen Sie dann in der
Navigation auf DB Überprüfung > Globalen
Referenz-Index prüfen und aktualisieren > Referenzindex überprüfen.
Läuft alles tadellos, wird ein Text Ähnlich „318 records from 30 tables were
checked/updated.“ angezeigt.
9. Ihre TYPO3 Installation ist nun upgedatet. Neues Backend-Design: die Extension "TYPO3 skin" via EXT-Manager installieren.
Beim Aufruf der Seite im Backend kommt: „localconf.php is not found!” und
im Frontend erscheint: „Cannot find configuration. This file is probably executed from the wrong location.”
Ursache:
1. Kontrollieren
Sie die Zugriffsberechtigungen mit “ls –l /srv/www/htdocs/cms”. Wobei
Sie „cms“ durch Ihr TYPO3 Verzeichnis ersetzen müssen. Wenn die Ausgabe wie
folgt aussieht so müssen Sie für das Verzeichnis und die Dateien den Benutzer
eintragen unter welchen der Apache Server läuft. Bei SLES 11 SP3 ist das
„wwwrun“.
2. Eventuell besteht auch ein Fehler mit den Dateilinks auf das TYPO3 Source Paket und die „index.php“ Datei.
Abhilfe:
1. Wenn Sie
feststellen das der Besitzer der Dateien auf „root“ oder einen anderen Benutzer
steht, so geben Sie folgendes ein um den Besitzer zu ändern.
SLES11:~ # chown –R wwwrun:ftp /srv/www/htdocs/cms
SLES11:~ # chmod –R 770 /srv/www/htdocs/cms
Das “cms” in den Befehlen ist durch Ihr Verzeichnis der TYPO3
Installation zu ersetzen. Im ersten Befehl wurde die Gruppe „ftp” für den reibungslosen
FTP Zugriff vergeben.
Siehe auch Kapitel „Verzeichnisrechte für TYPO3 vergeben“ vor.
2. Siehe Kapitel „Dateilinks auf das TYPO3 Source Paket setzen“
Analyse: Schalte Sie in der „php.ini“ im Verzeichnis „/etc/php5/apache2/“ die Anzeige der PHP Fehlermeldungen ein.
|
… display_errors = on … |
Danach starten Sie den Apache Server neu mit „rcapache2 restart“.
Es wird jetzt folgende Meldung angezeigt:
|
Parse error: syntax error, unexpected T_STRING in /srv/www/htdocs/rpw/typo3conf/localconf.php on line 16 |
Abhilfe:
D.h. Sie haben einen Fehler in der „localconf.php“ in der
Zeile 16. Kontrollieren Sie die Zeile 16 der „localconf.php“. Eventuell haben
Sie einen Schreibfehler in dieser Zeile.
Bei meiner Installation stand in dieser Zeile folgender Eintrag:
|
$TYPO3_CONF_VARS['SYS']['compat_version'] = '4.5; |
Es war ganz einfach das einfache Anführungszeichen (‘) hinter der Zahl 5 vergessen worden.
Nach einer Update Installation erscheint im Frontend plötzlich nur mehr die folgende Fehlermeldung.

Behebung:
Das Bakend funktioniert noch, aber im Root Template warem im Setup-Bereich nur mehr 5 Zeilen vorhanden, alle anderen Zeilen waren verschwunden. Es musste eine Rücksicherung der Datenbank durchgeführt werden, da die Einträge im Setup-Bereich sonst nirgends abgespeichert wurden.
Analyse: Schalte Sie in der „php.ini“ im Verzeichnis „/etc/php5/apache2/“ die Anzeige der PHP Fehlermeldungen ein.
|
… display_errors = on … |
Danach starten Sie den Apache Server neu mit „rcapache2 restart“.
Es wird jetzt folgende Meldung angezeigt:
|
Parse error: syntax error, unexpected T_STRING in /srv/www/htdocs/typo3_src-4.5.15/typo3/install/index.php on line 27 |
Abhilfe:
In der Zeile 27 war ein falscher Text „nstall tool is locked /*“ reingerutscht. Dieser muss „/* Install tool locked“ heißen. Die Datei danach wieder gespeichert.
Die Anzeige der PHP Fehlermeldungen nach Funktionstest wieder ausgeschaltet.
|
The Install Tool
is locked. |
Analyse:
Das TYPO3 Install Tool aus dem Verzeichnis „/srv/www/htdocs/cms/typo3/install“
und der Datei “index.php” wurde gesperrt.
Abhilfe:
Kopieren Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „typo2conf“. Achten Sie dabei darauf, dass das Datum der Datei dem heutigen Datum entspricht und die Uhrzeit der Erstellung der Datei nicht älter als eine Stunde ist.
WICHTIG Vergessen Sie nicht die Datei „ENABLE_INSTALL_TOOL“ nach Durchführung der Konfigurationen wieder zu entfernen.
Nachdem das Install Tool aufgerufen wird funktioniert keines der verwendeten Kennwörter.

Abhilfe:
Sie können das Install Tool Kennwort zurücksetzen indem Sie nach Eingaben eines Kennwortes den angezeigten „md-value“ in die Datei „localconf.php“ in die Zeile mit dem Text „$TYPO3_CONF_VARS['BE']['installToolPassword'] =“ kopieren.

Analyse: Sie haben auf eine neue TYPO3 Version upgedatet aber das TYPO3 Install Toll nicht gestartet.
Abhilfe: Starten Sie das TYPO3 Install Tool mit http://www.cms.com/typo3/install. Wobei der hier verwendete Domänenname „cms.com“ Ihren Domänennamen angepasst werden muss.
1. Aktivieren Sie das TYPO3 Install Tool (siehe „TYPO3 Install Tool starten“).
2. Starten Sie im TYPO3 Install Tool zuerst „Update Wizard“.
3. Klicken Sie bei „changeCompatibilityVersion“ auf „Next“.
4. Setzen Sie ein Häkchen bei allen „Acknowledged“.
5. Klicken Sie danach auf die Schaltfläche „Perform updates!“.
6. Wählen Sie jetzt im TYPO3 Install Tool „Database Analyzer“.
7. Klicken Sie
jetzt bei „Update required tables“ auf „COMPARE“.

8. Überprüfen Sie nach Deaktivierung des TYPO3 Install Tools nochmals die Funktion des Backend und Frontend.
Nach dem Aufruf von „show table status“ werden in der Ausgabe der einzelnen Tabelle verschiedene
mysql > use cms;
mysql > show table status;
|
… | be_groups | MyISAM | 10 | Dynamic | 5 | 1534 | 7672 | 281474976710655 | 3072 | 0 | 6 | 2008-02-21 22:46:43 | 2008-02-24 17:22:18 | 2008-02-21 22:46:43 | latin1_german2_ci | NULL | | | | be_sessions | MyISAM | 10 | Dynamic | 1 | 88 | 380 | 281474976710655 | 2048 | 292 | NULL | 2008-02-21 22:46:43 | 2008-02-26 23:52:32 | NULL | latin1_german2_ci | NULL | | | | be_users | MyISAM | 10 | Dynamic | 392 | 211 | 84388 | 281474976710655 | 16384 | 1520 | 393 | 2008-02-24 20:10:59 | 2008-02-26 23:47:22 | 2008-02-24 20:10:59 | latin1_german2_ci | NULL | | | | cache_extensions | MyISAM | 10 | Dynamic | 11799 | 394 | 4650760 | 281474976710655 | 248832 | 0 | NULL | 2008-02-21 22:46:44 | 2008-02-21 22:46:48 | NULL | latin1_swedish_ci | NULL | | | | cache_hash | MyISAM | 10 | Dynamic | 115 | 20363 | 2341832 | 281474976710655 | 8192 | 0 | NULL | 2008-02-21 22:46:49 | 2009-02-21 10:35:38 | NULL | latin1_swedish_ci | NULL | | | | cache_imagesizes | MyISAM | 10 | Dynamic | 239 | 116 | 27928 | 281474976710655 | 15360 | 0 | NULL | 2008-02-21 22:46:53 | 2009-02-17 23:57:19 | NULL | latin1_german2_ci | NULL | … |
Abhilfe: Siehe Kapitel „Umstellung vom Zeichensatz von <latin1> auf <utf8>“.
Ursache: Nach einer Umstellung oder einen Update kann es vorkommen dass Sie nicht mehr die korrekte „typo3conf/localconf.php“ verwenden. Kontrollieren Sie ob die verwendete „localconf.php“ die richtige ist und ob alle Einträge für verwendetet Extensions vorhanden sind.
Abhilfe:
Kontrolle des Datenbankzugriffs
|
… |
Kontrollieren Sie danach im Backend ob alle Extension richtig installiert sind. Es kann nämlich sein das durch eine falsche „localconf.php“ benötigte Extensions nicht installiert sind. Diese müssen dann manuell installiert werden (z.B. Autotemplate oder Template Voila). Löschen Sie danach nochmals den TYPO3 Cache und kontrollieren Sie die Website.
|
This installation was just upgraded to TYPO3 4.5. In this version, some default settings have changed. You can continue to use your settings by specifying the former default values in localconf.php. Please proceed to the Update Wizard in the TYPO3 Install Tool to update your configuration. |
Ursache:
Nach einer Umstellung oder einen Update kann es vorkommen, dass Sie diese Meldung auf Ihrer Website erhalten wenn der Upgrade auf die neue TYPO3 Version noch nicht abgeschlossen wurde.
Abhilfe:
Starten Sie das TYPO3 Install Tool und führen alle Schritte des „Update Wizard“ aus. Danach klicken Sie auf „COMPARE DATABASE“ welches ganz unten im „update Wizard“ angezeigt wird.
Beim Aufruf der TYPO3 Website erscheint die Fehlermeldung
“The requested page didn`t have a proper connection to the tree-root!
(Broken rootline)”

Ursache:
Sie haben den Update von einer alten Website durchgeführt auf welcher „RealURL“ Extension aktiviert war. Auf Ihrer neue Website wurde aber RealURL über die Datei „.htaccess“ nicht aktiviert.
Abhilfe:
Deaktivieren Sie die Extesnion „RealURL“ im „Extension Manager“.
Nach Umstellung einer Website auf die TYPO3 Version 4.5.x wird auf der Website immer eine graue Box mit dem Text „RELEASE NOTES FOR TYPO3 4.x releases“ angezeigt.

Ursache:
Die neue TYPO3 Version führt einen Syntax Check vom TYPO3 Skript durch und gibt
immer, wenn dabei ein Fehler festgestellt wurde, diese Info Box aus.
Abhilfe:
Stellen Sie zuerste fest in welchen Bereich des TYPO3 Skriptes diese Info Box ausgegeben wird. Die Box erscheint immer gleich neben dem definierten TYPO3 Objekt auf der Website.
Wenn Sie den TYPO3 Skript Bereich in welchen ein Fehler
vorhanden sein muss lokalisiert haben, dann prüfen Sie den dort vorhandenen
TypoScript Code genau.
Bei mir war die Angaben der Farbe mit „backColor =white“ für den Fehler
verantwortlich nach Änderung auf „„backColor =#FFFFFF“ war die Meldungsbox
verschwunden.
Nach dem Update werden in der Media-Auswahl für Bilder keine Dateien angezeigt.

Ursache:
Nach dem Update einer TYPO3 Installation bei Verwendung der „dam“ Extension, kann es vorkommen das in der Media-Auswahl keine Bilder angezeigt werden. Unter DAM werden die Einzelnen Dateien und Bilder in eine indezierten Liste angelegt, diese Indezierung kann einige Zeit brauchen bis diese durchgeführt wird. Ist die indezierte Liste leer wird auch nichts angezeigt.
Abhilfe:
Klicken Sie im TYPO3 Verzeichnisbaum auf „Media“
Wählen Sie die einzelnen Ordnern mit den Bilder aus welche
nicht angezeigt werden.
Klicken Sie dann auf „Aktualisieren“ damit der Index neu erstellt wird.

Wenn alle Warnsymbole verschwunden sind, ist die Indizierung wieder in Ordnung.
Oft kann das einige Zeit dauern bis die einzlenen Dateien alle indiziert wurden.

Ursache:
Die Banner Bilder wurden über die Extension „Image Rotation
(ric_rotation)“ angezeigt. Bei Einrichtung von dieser werden die Banner Bilder
in den Ordner „uploads/tx_ricrotation/“ kopiert. Beim Update der TYPO3
Installation wurde der Ordner aber nicht mit kopiert.
Abhilfe:
Kopieren Sie den Ordner „uploads/tx_ricrotation/“ von der alten TYPO3
Installation in das neue Installationsverzeichnis.
Nach einer Update Installtion und Konvertierung in „utf8“ bekommen sie die Umlaute und Sonderzeichen immer mit zwei Zeichen im Frontend und Backend angezeigt. Die Datenbank ist auf UTF8 eingestellt und auch im Template ist auf „utf8“ umgestellt. Trotzdem werden die Umlaute oder Sonderzeichen immer mit zwei Sonderzeichen angezeigt. So steht etwa "ä" für ein ä oder "ö" für ein ö.
|
Informationen
RealPowerWork beschäftigt sich mit Software Evaluierung und Programmierung. Hinter allen steht kein kommerzieller Hintergrund. Das vorangige Ziel dieser Veröffentlichungen besteht in der kostenlosen Bereitstellung von Informationen, Tips und Tricks, Beschreibungen oder Programmen.
Im Bereich News werden Mitteilung zu neuen Veröffentlichungen oder Planungen oder sonstiges Wissenwertes angezeigt.
Darunter befinden sich die Themenlinks, welche im Momentoment TYPO3, Linux und Lotus Notes beinhalten.
Unter den Themenlinks gibt es faßt immer den Bereich Dokumente. Hier werden Dokumente veröffentlicht die selbst erstellt wurden, oder Teil eines Freeware oder Open Source Projektes sind.
Zusätzlich unter Themenlinks ist oft der Bereich Downloads vorhanden. Hier werden selbst entwickelte Programme, Freeware oder Open Source zum kostenlosen Download angeboten.
Alle erwähnten Marken sind Schutzmarken der jeweiligen Unternehmen. |
Ursache:
Wenn Sie in TYPO3 Install Tool die Option „forceCharset“ auf „utf-8“ ein
oder in der „localconf.php“ sollte die Zeile
$TYPO3_CONF_VARS['BE']['forceCharset']
= 'utf-8';
vorhanden ist, dann sollte der Inhalt der Datenbank im UTF8
Zeichensatz interpretiert werden. Löschen Sie auch alle Dateien aus dem
„typo3conf“ Verzeichnis mit
rm temp_CACHE_*
Sollte dann der Fehler mit den Umlauten immer noch auftretten, so könnte hier der unglückliche Fall aufgetretten sein, dass Sie eine Datanbank, welche schon in UTF8 konvertiert war, nochmals in UTF8 konvertiert haben. Dadurch haben Sie jetzt die Sonderzeichen in einen zwei Zeichen-Code umgewandelt und die Umlaute wurden dann auch so in der Datenbank gespeichert. Siehe dazu auch http://www.skom.de/Doppelt-UTF-8-kodierte-Daten-i.191.0.html
Behebung:
Führen Sie eine Sicherung der Datenbank mit „mysqldump“ durch. Kontrollieren Sie den Inhalt der Sicherung und achten Sie auf die Texte in der Sicherung wie nachfolgend beschrieben.
|
SLES11:~ # mysqldump –uroot –p typo3db > /root/typo3db-backup.sql SLES11:~ # vi /root/typo3db-backup.sql è Suchen nach mit “/” und Eingabe von “INTO `pages`” è Wenn Sie dort im Text folgende Zeichen folgen finden handelt es sich um eine doppelte Konvertierung:
Dokumente,diese,nicht,Kosten,wird,Source,Open,RealPowerWork,Freeware,Rechte,ensprechenden,gelten,verÃ<83>¶ffentliche,Reparaturen,Ihnen,liegen,falsch,Dokumenten,diesen,fehlerhaft,herausstellen,notwendige,Copyright,Service,behÃ<83>¤lt,VerÃ<83>¤nderung,Weiterverkauf,Urheberrechte,Duplizierung,darf,erfolgen,EinverstÃ<83>¤ndnis,seine,vorliegen,Beschreibungen,angefÃ<83>¼hrt,verfassten,sofern,Schutzrechte,andere,Sofware,bezÃ<83>¼glich,darauf,gestellt,VerfÃ<83>¼gung,hingewiesen,dass,GewÃ<83>¤hrleistung,keinerlei … |
In den der obigen Ausgabe sehen Sie das die Umlaute, wie z.B. „ä“ als „Ã<83>¤”, “ü” als “Ã<83>¼“ oder „Ö“ als „Ã<83>¶” in der Datenbank abgespeichert wurde.
Führen Sie jetzt zuerst einmal eine Sicherung Ihrer Datenbank mit dem Parameter „--default-latin-character-set=latin1“ durch:
|
SLES11:~ # mysqldump -uroot -p typo3db --default-character-set=latin1 > /root/typo3db-backup-latin1.sql |
Damit erhalten Sie vorerste einmal einen Datenbankdump welcher keine doppelt konvertierten Sonderzeichen enthält.
|
Dokumente,diese,nicht,Kosten,wird,Source,Open,RealPowerWork,Freeware,Rechte,ensprechenden,gelten,veröffentliche,Reparaturen,Ihnen,liegen,falsch,Dokumenten,diesen,fehlerhaft,herausstellen,notwendige,Copyright,Service,behält,Veränderung,Weiterverkauf,Urheberrechte,Duplizierung,darf,erfolgen,Einverständnis,seine,vorliegen,Beschreibungen,angeführt,verfassten,sofern,Schutzrechte,andere,Sofware,bezüglich,darauf,gestellt,Verfügung,hingewiesen,dass,Gewährleistung,keinerlei,jegliche |
In der obigen Ausgabe sehen Sie die Umaltue so wie diese in UTF8 aussehen sollten, ein „ä“ als „ä“, ein „ü“ als „ü“ oder ein „Ö“ als „ö“.
Wir kopieren jetzt die Datei „typo3db-backup-latin1.sql“ auf den Namen „typo3db-backup-utf8.sql“ und führen dann folgende Befehler aus:
|
SLES11:~ # cp /root/typo3db-backup-latin1.sql /root/typo3db-backup-utf8.sql SLES11:~ # vi
/root/typo3db-backup-utf8.sql :wq ß dann <Esc> und Doppelpunkt un mit “wq” speichern. |
Wir habne jetzt die Zeichensatz-Angabe in der Sicherungsdatei von „latin1“ auf „utf8“ geändert. Die Datei „typo3db-backup-utf8.sql“ sieht jetzt wie eine Datenbanksicherung im UTF8 Zeichensatz aus. Diese Datei verwenden wir jetzt für unsere Rücksicherung.
|
SLES11:~ # mysql -uroot -p < /root/typo3db-backup-utf8.sql |
Nach der Rücksicherung sollten die Umlaute und Sonderzeichen im Backend und Frontend wieder richtig angezeigt werden.
Hinweis Sie müssen keine zusätzlichen Definitionen im Root Template für den UTF8 Zeichensatz vornehmen, wenn die Datenbank schon im UTF8 Zeichenformat vorliegt. Auch die Eintragungen im TYPO3 Install Tool im Feld „setDBinit“ sind für neuer TYPO3 Versionen nicht mehr erforderlich.
Den folgenden Fehler erhalten Sie beim Aufruf der Website unter TYPO3 4.6.x wenn Ihr Server die PHP 5.3.x nicht installiert hat.
|
TYPO3 requires PHP 5.3.0 or higher. |
Abhilfe:
Voraussetzung für die TYPO3 V3.6 Installation ist eine vorhandene PHP 5.3.x Installation auf dem Server. Verwenden Sie eine neuere Linux Distribution oder installieren Sie PHP 5.3.x manuell auf Ihren Server.
Wenn Sie mehrere TYPO3 Websites auf einem lokalen Server betreiben möchten, so können Sie dies sehr einfach durchführen.
1. Source Paket von
TYPO3 z.B. „typo3_src_4.5.15“ sollte durch die schon vorhandene TYPO3 Site
schon vorhanden sein.
2. Durch das
Verschieben der Dateien des entpacken „Dummy Paketes“ z.B. „dummy-4.5.15.tar.gz“
in ein neues Verzeichnis wird eine neue zusätzliche TYPO3 Instanz erzeugt.
SLES11:~ # cp dummy-4.5.15.tar.gz /srv/www/htdocs
SLES11:/srv/www/htdocs # tar xzf dummy-4.5.15.tar.gz
SLES11:/srv/www/htdocs # mv dummy-4.5.15 newcms
WICHTIG Ersetzen Sie
den Namen „newcms“ durch den gewünschten Namen in welchen Ihr TYPO3
Installationsverzeichnis auf dem Server sein soll.
3. Berechtigungen
im Verzeichnis für den Benutzer und die Gruppe unter welcher der Apache am
Server läuft vergeben.
SLES11:~ # cd /srv/www/htdocs
SLES11:/srv/www/htdocs # chown –R wwwrun newcms/
SLES11:/srv/www/htdocs # chmod –R u+w,o-rwx newcms/
4. Erstellen Sie
die neuen Symlinks auf die TYPO3 Source Dateien.
SLES11: cd /srv/www/htdocs/newcms
SLES11:/srv/www/htdocs/cms # ln –s ../typo3_src-4.5.15 typo3_src
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/t3lib t3lib
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/typo3 typo3
SLES11:/srv/www/htdocs/cms # ln -s typo3_src/index.php index.php
5. Starten Sie
jetzt das „TYPO3 Install Tool“ und erzeugen Sie eine neue Datenbank für
diese TYPO3 Instanz.
http://locahost/newcms
Hinweis Sie können die TYPO3 Datenbank auch manuell
vor Ausführung des „TYPO3 Install Tools“ erstellen und dann im Install Tool
auswählen. Dies wird dann empfohlen wenn Sie spezielle Zeichensatzeinstellungen
wie z.B. „utf8“ in der Datenbank benötigen.
6. Folgen Sie den
einzelnen Schritten des „TYPO3 Install Tool“ und beenden Sie die Einrichtung
mit der Vergabe eines neue TYPO3 Site Namens in der Install Tool
„Basic Configuration“
7. Damit sie nun
auf diese neue auch über einen eigenen DNS Namen zugreifen können müssen Sie
noch in der Apache Server Konfiguration eine neue Server Instanz erzeugen.
Wenn Sie mehrere Websites auf einer TYPO3 Installation
betreiben wollen. Müssen Sie im Apache Server einen virtuellen Server für jede
Website definieren.
Hinweis Wenn Sie sich einen neuen virtuellen Server
für Testzwecke oder als Zwischenserver für eine Übersiedlung einer TYPO3
Website erstellen, so ist es Vorteilhaft den gleichen Domänennamen zu
verwenden, welcher später am Produktiv-Server verwendet wird. Sie müssen nur
die „hosts“ Einträge erstellen die zu Ihrer IP-Adresse verweisen.
1. Dies erfolgt bei
Apache2 für eine SLES 11 Installation im Verzeichnis „vhost.d“ unter dem „/etc/apache2/“
Verzeichnis.
SLES11:~ # cd /etc/apache2/vhosts.d
2. Kopieren Sie am
besten die vorhandene Datei „vhost.template“ in eine neue Datei mit dem Namen
für den virtuellen Host z.B. „newcms.conf“.
SLES11:/etc/apache2/vhosts.d # cp vhost.template newcms.conf
Hinweis Lesen Sie kurz die Beschreibung für die
Einrichtung von virtuellen Hosts. Kopieren Sie dann die entsprechenden Remarked
(„#“) Zeilen in einen neuen Bereich unterhalb.
Bearbeiten Sie die neue Konfigurationsdatei „newcms.conf“ wie folgt.
|
… <VirtualHost *:80> ServerAdmin webmaster@www.newcms.com ServerName www.newcms.com … DocumentRoot /srv/www/htdocs/newcms
# if not specified, the global error log is used ErrorLog /var/log/apache2/www.newcms.com-error_log CustomLog /var/log/apache2/www.newcms.com-access_log combined … ScriptAlias /cgi-bin/ "/srv/www/htdocs/newcms/cgi-bin/" … <Directory "/srv/www/htdocs/newcms/cgi-bin" </Directory> … <Directory "/srv/www/htdocs/newcms"> … Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all
</Directory>
</VirtualHost> |
Hinweis Ersetzen Sie in dem oben angeführten Konfigurationszeilen den Text „newcms“ und „www.newcms.com“ immer durch Ihren eigenen gewünschten Domain und Host-Namen für Ihre TYPO3 Instanz.
3. Aktivieren Sie
alle Namen für die virtuellen Hosts auf Port „80“ am Ende in der Datei
„listen.conf“ im Verzeichnis „/etc/apache2/“.
|
… #NameVirtalHost * NameVirtualHost *:80 … |
4. Starten Sie
danach den Apache2 Server neu um die Konfiguration zu testen.
SLES11:~ # rcapache2 restart
5. Sie können sich
die angelegten virtuellen Hosts mit folgendem Befehl ansehen.
SLES11:~ # /usr/sbin/httpd2 –S
|
SLES11:/etc/apache2/vhosts.d # /usr/sbin/httpd2 -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server www.cms.com (/etc/apache2/vhosts.d/cms.conf:15) port 80 namevhost www.cms.com (/etc/apache2/vhosts.d/cms.conf:15) port 80 namevhost www.realpowerwork.com (/etc/apache2/vhosts.d/rpw.conf:15) SLES11:/etc/apache2/vhosts.d # |
6. Außerdem müssen
Sie dafür sorgen, dass alle angegeben Hostnamen wie „www.newcms.com“ auch von
Ihrem DNS Server aufgelöst werden.
Wenn Sie keinen DNS Server verwenden, so müssen Sie die lokale „hosts“ Datei
bearbeiten und einen neuen Eintrag hinzufügen (/etc/hosts):
|
… 10.0.0.144 www.realpowerwork.com 10.0.0.144 www.newcms.com … |
Hinweis
Ersetzen Sie in dem oben angeführten Konfigurationszeilen die
IP-Adresse „10.0.0.144“ und den Domain-Namen „newcms.com“ durch eigenen gewünschten IP-Adresse und
Domain-Namen für Ihre TYPO3 Instanz.
7. Im TYPO3 Backend legen Sie jetzt noch auf der Startseite (nicht im Root) Ihrer Website einen Domaineintrag an. Klicken Sie auf „Neu“ wählen Sie „Domain“ und geben Sie den Domainnamen Ihrer Website „newcms.com“ ein.
Beim Starten vom Apache Server kommt folgende Meldung.
|
SLES11:/home/rpw # rcapache2 restart [Sun Oct 09 11:42:04 2011] [warn] NameVirtualHost www.realpowerwork.com:0 has no VirtualHosts Syntax OK Shutting down httpd2 (waiting for all children to terminate) done Starting httpd2 (prefork) [Sun Oct 09 11:42:05 2011] [warn] NameVirtualHost www.realpowerwork.com:0 has no VirtualHosts done SLES11:/home/rpw # |
Abhilfe:
Wenn Sie mehrere virtuelle Host auf einem Apache Server betreiben, sollten Sie für jeden virtuellen Host in der Konfigurationsdatei folgendes eintragen:
|
… <VirtualHost *:80> ServerAdmin webmaster@www.newcms.com ServerName www.newcms.com … </VirtualHost> … |
In der „listen.conf“ Datei aktivieren Sie dann alle Namen für virtuelle Host auf Port „80“:
|
… #NameVirtalHost * NameVirtualHost *:80 … |
Beim Starten vom Apache Server mit „rcapache2 restart“ wird folgende Fehlermeldung ausgegeben und der Apache Server wird nicht gestartet.
|
SLES11:/etc/apache2/vhosts.d # rcapache2 restart [Sun Sep 25 10:31:11 2011] [error] VirtualHost www.newcms.com:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results Syntax OK Shutting down httpd2 (waiting for all children to terminate) done Starting httpd2 (prefork) [Sun Sep 25 10:31:12 2011] [error] VirtualHost www.newcms.com:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results |
Abhilfe:
Achten Sie darauf dass Sie in Ihrer Datei für den virtuellen Apache Server
einen Namen für den virtuelle Host vergeben haben.
|
<VirtualHost *:80> … </VirtualHost> |
Aktivieren Sie alle Namen für die virtuellen Hosts auf Port „80“ am Ende in der Datei „listen.conf“ im Verzeichnis „/etc/apache2/“.
|
… #NameVirtalHost * NameVirtualHost *:80 … |
Beim Starten vom Apache Server kommt folgende Fehlermeldung.
|
SLES11:/etc/sysconfig/network # rcapache2 restart [Sat Oct 01 14:33:31 2011] [error] (EAI 2)Name or service not known: Could not resolve host name www.cms.com -- ignoring! [Sat Oct 01 14:33:31 2011] [error] (EAI 2)Name or service not known: Could not resolve host name www.cms.com -- ignoring! Syntax OK |
Ursache:
Der vergebene Hostname existiert schon im Internet und es wird über DNS versucht diesen Namen aufzulösen. Ihr DNS Server, sollten Sie einen verwenden, kann diesen Namen aber nicht auflösen. Wenn Sie keinen DNS Server verwenden müssen Sie einen Eintrag in der lokalen „/etc/hosts“ Datei für Ihren virtuellen Host vornehmen.
Abhilfe:
Sie müssen dafür sorgen, dass alle angegeben Hostnamen wie „www.newcms.com“
auch von Ihrem DNS Server aufgelöst werden.
Wenn Sie keinen DNS Server verwenden, so müssen Sie die lokale „hosts“ Datei
bearbeiten und einen neuen Eintrag hinzufügen (/etc/hosts).
|
… 10.0.0.144 www.newcms.com … |
Ersetzen Sie die IP-Adresse und den Hostnamen durch die von Ihnen verwendete IP-Adresse und den Hostnamen.
Für die TYPO3 Installation sollten Sie noch einige Pakete
auf Ihren Server installiert sein. Wenn Sie die TYPO3 Site auf einen gehosteten
Website eines Providers betreiben der Ihnen TYPO3 zur Verfügung stellt brauchen
Sie sich um diese zusätzlichen Pakte nicht zu kümmern, weil diese schon der Internet
Provider zur Verfügung stellt. Wenn Sie einen lokalen TYPO3 Server betreiben,
so müssen Sie diese Pakete vor der Website Einrichtung unter TYPO3
installieren.
Diese Grafikprogramme „GD“ (oder „GDLib“) und „FreeType“ sind auf jedem TYPO3 System erforderlich. Diese werden für den „GRAPHICBUILDER verwendet (z.B. grafische Schriften).
Die Programme „GraphicsMagick“ oder „ImageMagick“ werden für Bildbearbeitungen, insbesondere Skalierung der Bilder verwendet.
Hinweis Im Moment wird der Einsatz von „GraphicsMagick“ empfohlen, weil damit eine bessere Qualität bei geringerem Systemverbrauch erreicht wird.
WICHTIG Vorsicht wenn Sie eine lokale Installation von TYPO3 besitzen und die „localconfig.php“ aus dem Verzeichnis „typo3conf“ auf einen Server eines Providers kopieren, überschreiben Sie damit eventuell auch die Einstellungen für das Grafikprogramm.
Kopieren Sie zuerst die „localconf.php“ Datei des Internet Providers und übernehmen Sie aus dieser alle Einstellungen für die Grafikeinstellungen und Datenbankzugriffseinstellungen. Oder fügen Sie in die Provider Datei alle Änderungen der lokalen „localconf.php“ ein, ohne dass Sie die Grafikeinstellungen oder die Datenbankzugriffseinstellungen verändern der Provider Datei verändern.
Bei den meisten gängigen Linux Distributionen ist die „GD“ oder „GDLib“ Library schon installiert.
Kontrollieren Sie unter den vorhanden Pakten mit „rpm –qa gd“ ob das GDLib Paket schon installiert ist. Bei einem vorinstallieren TYPO3 Paket von einem Internet Provider sollte dies schon der Fall sein.
Kontrollieren Sie über das TYPO3 Install Tool mit dem Menüpunkt „phpinfo()“ ob das Grafikprogramm „gd“ installiert ist und ob die Funktion in PHP über das Paket „php5-gd“ eingebunden wurde.
Öffnen sie die „phpinf0()“ suchen Sie die Rubrik „gd“ darunter werden alle Informationen zum „gd“ Grafikprogramm angezeigt.
Hinweis Sollte die Rubrik „gd“ nicht angezeigt werden Kontrollieren Sie nochmals die installierten Pakete, ggf. führen Sie ein Update durch


Ursache:
Entweder das Installierte GDLib Paket ist keine „GDLib 2“ Version, oder in der TYPO3 Konfiguration wurden dieser Punkt nicht aktiviert.
Abhilfe:
Gehen Sie im TYPO3 „Install Tool“ in den Punkt „All Configuration“ und setzen Sie folgende Optionen:
[GFX][gdlib_png] = 1
Klicken Sie danach auf die Schaltfläche „Write to localconf.php“
Wenn Sie die TYPO3 Site auf einen gehosteten Website eines Internet Providers betreiben können Sie die Installation des Grafikprogramms überspringen, da dies vom Provider schon zur Verfügung gestellt wird.
Ansonsten ist eines empfohlenen der Pakete für die Grafikformatierung oder –umwandlung das Programm GraphicsMagick. Sehen Sie nähere Details dazu unter: http://www.graphicsmagick.org/download.html
1. Prüfen Sie, ob
Sie die ImageMagick Programme "gm“ (ohne Pfadangabe) gestartet werden
können. Wenn der Befehl nicht funktioniert, müssen Sie GraphicsMagick
nachinstallieren.
Download von:
ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/1.1/GraphicsMagick-1.1.15.tar.gz
2. Wenn Sie ein
Tarball-Paket beinhaltet die Dateiendung „tar“ downgeladen haben müssen Sie
diese zuerst mit folgenden Befehl entpacken:
SLES11:~ # tar -xvzf GraphicsMagick-1.1.15.tar.gz
3. Gehen Sie jetzt
in das Verzeichnis „GraphicsMagick-1.1.15“ mit:
SLES11:~ # cd GraphicsMagick-1.1.15
4. Für die
Kompilierung des ImageMagick Programmes benötigen Sie noch die sogenannten
“devel”-Pakte welche Sie noch nachinstallieren müssen:
„freetype2-devel“, „gd-devel“,“glibc-devel“,„liblcms-devel“,„libtiff-devel“,
„libpng-devel“,„libjpeg-devel“, „libjasper-devel“, „libzip-devel“,
„libbz2-devel“ „libxml2-devel“, „zlib-devel“
Hinweis Alle angeführten Pakete finden Sie nicht auf
den normalen SLES11-SP1 DVDs sondern nur auf der DVD1 des SLES11-SP1-SDK
(Development Kits). http://download.novell.com/Download?buildid=zzeQqpY9nK4~
5. Führen Sie den
„configure“ mit folgenden Parametern aus um GraphicsMagick statisch zu Linken:
SLES 11 :~# ./configure
--enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus
--without-x --without-fpx --without-threads --without-dps --without-lcms
--without-trio --without-wmf --disable-installed --enable-ltdl-convenience
--enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2
-pipe'
Hinweis Eventuell funktioniert der Befehl
“./configure” auch einwandfrei ohne das Sie die lange Optionsliste eingeben.
Sie sollten es einfach einmal versuchen und sich das Ergebnis ansehen. Wichtig
ist auch das „--enable-static=yes“ angezeigt wird.
6. Nach Ausführung
sollte folgendes angezeigt werden (unter GM V1.1.15):
|
GraphicsMagick is configured as follows. Please verify that this configuration matches your expectations.
Host system type : x86_64-unknown-linux-gnu
Option Configure option Configured value ----------------------------------------------------------------- Shared libraries --enable-shared=no no Static libraries --enable-static=yes yes GNU ld --with-gnu-ld=yes yes LZW support --enable-lzw=yes yes Quantum depth --with-quantum-depth=8 8
Delegate Configuration: BZLIB --with-bzlib=yes yes DPS --with-dps=no no FlashPIX --with-fpx=no no FreeType 2.0 --with-ttf=yes yes Ghostscript None gs (8.62) Ghostscript fonts --with-gs-font-dir=default /usr/share/ghostscript/fonts/ Ghostscript lib --with-gslib=no no JBIG --with-jbig=yes no JPEG v1 --with-jpeg=yes yes JPEG-2000 --with-jp2=yes yes LCMS --with-lcms=no no Magick++ --with-magick-plus-plus=no no PERL --with-perl=no no PNG --with-png=yes yes TIFF --with-tiff=yes yes TRIO --with-trio=no no Windows fonts --with-windows-font-dir= none WMF --with-wmf=no no X11 --with-x=no no XML --with-xml=yes yes ZLIB --with-zlib=yes yes
X11 Configuration:
Not using X11.
Options used to compile and link: CC = gcc -std=gnu99 CFLAGS = -O2 -pipe -Wall CPPFLAGS = -I/usr/include/freetype2 -I/usr/include/libxml2 CXX = g++ CXXFLAGS = -O2 -pipe DEFS = -DHAVE_CONFIG_H LDFLAGS = -L/usr/lib -L/usr/lib LIBS = -ltiff -lfreetype -ljasper -ljpeg -lpng -lbz2 -lxml2 -lz -lm |
7. Führen Sie jetzt
die Kompilierung des Programmes durch:
SLES11:~ # make
Hinweis Sie müssen nicht „make install“ ausführen, da
wir die meisten Komponenten von GraphicsMagick für einen TYPO3 Installation
nicht benötigen.
8. Da wir für TYPO3
nur das Programm „gm“ benötigen reichte es aus, wenn wir diese Datei in ein
ausführbares Verzeichnis kopieren.
Wenn ein lokaler Server verwendet wird, kann die Datei „gm“ aus dem Verzeichnis
„utilities“ am besten in das Verzeichnis "/usr/local/bin" kopiert
werden, dort sucht auch das TYPO3 Install Tool automatisch nach dem
Grafikprogramm.
SLES11:~ # cp utilities/gm /usr/local/bin/
Wenn es sich um einen gehosteten Server handelt kann aber auch, unter dem Web
Server Homeverzeichnis "htdocs/", ein eigenes Unterverzeichnis "gm"
angelegt werden. Danach die Dateien aus jeweiligem Quellverzeichnis in dieses
„gm“ Verzeichnis per FTP kopieren. Die Pfade für den Aufruf müssen im TYPO3
Install Tool dann angepasst werden.
9. Für die delegierte
Ausführung von Programmen, durch das GraphicsMagick Programm, müssen Sie jetzt
noch die Datei „delegate.mgk“ aus dem Verzeichnis „magic“ in das Verzeichnis
„/usr/local/bin“ kopieren.
SLES11:~ # cp config/delegates.mgk /usr/local/bin/
Für GraficsMagick Versionen unterhalb von V1.2.x müssen zusätzlich auch
noch die Datei „magic.mgk“ kopieren.
SLES11:~ # cp config/magic.mgk /usr/local/bin/
10. Testen Sie auf einem lokalen
Server, ob danach „gm“ ohne Pfadangabe in einem Terminalfenster (nicht vom Pfad
„/usr/local/bin/“) aufgerufen werden kann.
|
SLES 11 :~ # gm -version GraphicsMagick 1.1.15 2009-04-01 Q8 http://www.GraphicsMagick.org/ Copyright (C) 2002-2009 GraphicsMagick Group. Additional copyrights and licenses apply to this software. See http://www.GraphicsMagick.org/www/Copyright.html for details. |
11. Wenn Sie den Safemode (save_mode)
von PHP aktiviert haben, so müssen Sie als Verzeichnis für Ausführbare Dateien
in der php.ini folgendes eingeben:
|
.. safe_mode = on … safe_mode_exec_dir = /usr/local/bin/ … |
6. Damit GraphicsMagick
unter TYPO3 verwendet wird, müssen Sie im TYPO3 Install Tool unter „All
configuration" den Parameter „im_version_5“ auf „gm“
setzen.
Klicken Sie danach am Ende der Seite auf „Write to localconfig.php“.
Damit können jetzt die GraphicsMagick Programme über PHP
gestartet werden und auch TYPO3 verwendet für die Grafikverarbeitung
GraphicsMagick.
Hinweis Unter GraphicsMagick haben bei mir die Tests für „niceText“ zwar funktioniert, aber die erzeugten Grafiken waren wesentlich größer.
Eine Funktion, die oft Problem bei der GraphicsMagick Installation verursacht ist die „Delegate“ einer Grafikbearbeitung, welche durch den Befehl „gm“ aufgerufen wird. In diesem Fall sucht „gm“ die Datei „magic.mgk“ oder „delegates.mgk“, da in diesen Dateien das richtige Programm und die Scripts für die Ausführung der Grafikbearbeitung hinterlegt sind.
Dabei kann es sein, dass die lokale Ausführung des „gm“ Befehles in einem Terminalfenster ohne Probleme funktioniert, aber die Ausführung über ein PHP Script einen Fehler ausgibt.
Die häufigste Ursache für diesen Fehler liegt an der Eigenheit, dass PHP die beiden Dateien „magic.mgk“ und „delegates.mgk“ in dem Verzeichnis sucht, von dem das PHP Script gestartet wurde.
Zur Ausführung des Tests wird eine PDF Datei, benötigt, diese sollte nicht allzu groß sein, da dies für das Ergebnis nicht ausschlaggeben ist. Normalerweise sollte auch die Version der PDF Datei für diesen Test keine Rolle spielen, wenn es aber Probleme bei den Test gibt, könnten Sie den Test auch mit anderen Versionen einer PDF Datei wiederhohlen.
Kopieren Sie die PDF Datei in das Verzeichnis „/srv/www/htdocs/“ Ihres Webserver. Diese Datei wird dann auch für alle nachfolgenden Test verwendet. Der Name der PDF Datei welche hier verwendet wird ist „doc.pdf“, dieser Name muss durch den Namen Ihrer PDF Datei ersetzt werden.
Setzen Sie die Zugriffsrechte auf diese Datei auf „Lesen“ für alle Benutzer.
Um „Delegate“ in einem Terminalfenster zu testen, geben Sie folgende Befehlszeile in das Terminalfenster ein:
SLES 11 :~ # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf
Als Ergebnis sollten Sie folgende Ausgabe erhalten:
|
/srv/www/htdocs/doc.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.040u 0:01 … |
Wenn Sie folgende Fehlermeldung erhalten wird die „delegate.mgk“ nicht gefunden:
|
/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory]. |
Testen Sie die Eingabe eines Suchpfades für Konfigurationsdateien
(*.mgk) folgender Eingabe im Terminalfenster:
|
SLES 11 :~ # MAGICK_CONFIGURE_PATH=/usr/local/bin SLES 11 :~ # export MAGICK_CONFIGURE_PATH |
Wenn der obige Test jetzt funktioniert, erstellen oder bearbeiten Sie die Datei „/etc/bash.bashrc.local“ und fügen Sie folgende Zeile ein, damit die Variable bei jedem Start zugewiesen wird:
SLES 11 :~ # vi /etc/bash.bashrc.local
Drücken Sie jetzt <Esc> und danach <i> damit zum Insert Modus gewechselt wird.
Fügen Sie jetzt folgende Zeile ein:
|
… MAGICK_CONFIGURE_PATH=/usr/local/bin … |
Wechseln jetzt in den Command Modus <Esc> und danach <:> (Doppelpunkt).
Speichern Sie die Datei durch Eingabe von „wq“ und Enter.
Starten Sie danach den Apache Server neu „rcapache2 restart“.
Erstellen Sie ein PHP Script mit dem Namen „gm-test.php“ im
Verzeichnis „/srv/www/htdocs/“ Ihres Webservers:
|
<?php system("gm identify /srv/www/htdocs/doc.pdf[0] 2>&1"); ?> |
Führen Sie das Script dann über einen Browser auf dem Server
aus:
http://localhost/gm-test.php
Hinweis Wenn Sie auf das Verzeichnis „htdocs“ nicht direkt zugreifen können, nehmen Sie ein Unterverzeichnis auf welches Sie Zugriff haben.
Als Ergebnis sollten Sie folgendes erhalten, wenn alles funktioniert:
|
/srv/www/htdocs/doc.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.000u 0:01 … |
Wenn Sie folgende Fehlermeldung erhalten, funktioniert „Delegate“ unter PHP nicht:
|
/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory]. |
Hinweis Wenn Sie in PHP den „safe_mode“ aktiviert haben, müssen Sie den Pfad für in welchen sich die „gm“ Datei befindet, in der „php.ini“ mit „safe_mode_exec_dir“ festlegen.
Eine andere Ursache könnte sein, dass die Umgebungsvariable für GraphicsMagick in PHP nicht übernommen wurde. Suchen Sie in der „phpinfo()“ die „Environment“ Variable „MAGICK_CONFIGURE_PATH“.
![]()
Ist die Variable „MAGICK_CONFIGURE_PATH“ nicht vorhanden, so wurde diese vielleicht nicht als globale Variable definiert. Vielleicht wurde der Apache Server nach der Definition nicht neu gestartet. Damit die Umgebungsvariable beim Neustart vom Linux Server geladen wird, sollte diese in die Datei „/etc/bash.bashrc.local“ eingetragen werden.
Erstellen Sie ein PHP Script mit dem Namen
„gm-test-typo3.php“ im Verzeichnis „/srv/www/htdocs/“ Ihres Webservers:
|
<?php system("gm identify /srv/www/htdocs/cms/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf[0] 2>&1"); ?> |
Hinweis Wobei cms in dem Script dem Pfad Ihrer Typo3 Installation entspricht.
Führen Sie das Script dann über einen Browser auf dem Server
aus:
http://localhost/cms/gm-test-typo3.php
Als Ergebnis sollten Sie folgendes erhalten, wenn alles funktioniert:
|
/srv/www/htdocs/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf PDF 595x842+0+0 DirectClass 8-bit 1.4m 0.000u 0:01 |
Wenn Sie folgende Fehlermeldung erhalten, funktioniert „Delegate“ nicht, suchen Sie nach einer Lösung unter dem Kapitel „Fehler Unable to access configuration file (delegates.mgk) [No such file or directory]“:
|
/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory]. |
Sehen Sie dazu die Anleitung unter Kapitel „6.4 TYPO3 Graphiktests durchführen“

|
SLES11:~/GraphicsMagick-1.1.15 # ./configure --enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus --without-x --without-fpx --without-threads --without-dps --without-lcms --without-trio --without-wmf --disable-installed --enable-ltdl-convenience --enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2 -pipe' configure: WARNING: unrecognized options: --enable-ltdl-convenience configuring GraphicsMagick 1.1.15 checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking whether build environment is sane... yes checking for a BSD-compatible install... /usr/bin/install -c checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking whether the C compiler works... no configure: error: in `/root/GraphicsMagick-1.1.15': configure: error: C compiler cannot create executables See `config.log' for more details. SLES11:~/GraphicsMagick-1.1.15 # |
Abhilfe:
Es fehlt das „C++“ Paket für die Erzeugung der Ausführbaren Dateien (Executables).
Installieren Sie das Paket über den YaST und suchen Sie nach „gcc-c++“ und Installieren Sie das Paket. Führen Sie danach den „./configure“ nochmals aus.
Bei allen Grafik- und Komprimierfunktionen wird in der Konfiguration immer „no“ angezeigt.
|
Delegate Configuration: BZLIB --with-bzlib=yes no DPS --with-dps=no no FlashPIX --with-fpx=no no FreeType 2.0 --with-ttf=yes no (failed tests) Ghostscript None gs (8.62) Ghostscript fonts --with-gs-font-dir=default /usr/share/ghostscript/fonts/ Ghostscript lib --with-gslib=no no JBIG --with-jbig=yes no JPEG v1 --with-jpeg=yes no JPEG-2000 --with-jp2=yes no LCMS --with-lcms=no no Magick++ --with-magick-plus-plus=no no PERL --with-perl=no no PNG --with-png=yes no TIFF --with-tiff=yes no TRIO --with-trio=no no Windows fonts --with-windows-font-dir= none WMF --with-wmf=no no X11 --with-x=no no XML --with-xml=yes no ZLIB --with-zlib=yes no |
Ursache:
Beim Ausführen von „./configure“ kommt bei alle Überprüfungen von „*.h“ Dateien wie z.B. „zlib.h“, „bzlib.h“, „png.h“, „jconfig.h“, „jpeglib.h“, „freetyp-config.h“, „tiff.h“ etc. immer in der Zeile „presence….no“. D.h. die Dateien werden nicht gefunden.
|
checking for ZLIB support ... checking zconf.h usability... no checking zconf.h presence... no checking for zconf.h... no checking zlib.h usability... no checking zlib.h presence... no checking for zlib.h... no checking for compress in -lz... no checking for uncompress in -lz... no checking for deflate in -lz... no checking for inflate in -lz... no checking for gzseek in -lz... no checking for gztell in -lz... no checking if ZLIB package is complete... no checking for BZLIB support ... checking bzlib.h usability... no checking bzlib.h presence... no checking for bzlib.h... no checking for BZ2_bzCompress in -lbz2... no checking for BZ2_bzDecompress in -lbz2... no checking if BZLIB package is complete... no checking for X... disabled checking for PNG support ... checking png.h usability... no checking png.h presence... no checking for png.h... no checking for png_get_io_ptr in -lpng... no checking if PNG package is complete... no checking for JPEG support ... checking jconfig.h usability... no checking jconfig.h presence... no checking for jconfig.h... no checking jerror.h usability... no checking jerror.h presence... no checking for jerror.h... no checking jmorecfg.h usability... no checking jmorecfg.h presence... no checking for jmorecfg.h... no checking jpeglib.h usability... no checking jpeglib.h presence... no checking for jpeglib.h... no checking for jpeg_read_header in -ljpeg... no checking for JPEG library is version 6b or later... no checking if JPEG package is complete... no checking for JPEG version 2 support ... checking jasper/jasper.h usability... no checking jasper/jasper.h presence... no checking for jasper/jasper.h... no checking for jas_stream_fopen in -ljasper... no checking if JPEG version 2 support package is complete... no checking for FreeType 2.0 ... checking for freetype-config... no checking for FT_Init_FreeType in -lfreetype... no checking ft2build.h usability... no checking ft2build.h presence... no checking for ft2build.h... no checking for freetype/freetype.h... yes checking if FreeType package is complete... no -- some components failed test checking for TIFF support ... checking tiff.h usability... no checking tiff.h presence... no checking for tiff.h... no checking tiffio.h usability... no checking tiffio.h presence... no checking for tiffio.h... no checking for TIFFOpen in -ltiff... no checking for TIFFClientOpen in -ltiff... no checking for TIFFIsByteSwapped in -ltiff... no checking for TIFFReadRGBATile in -ltiff... no checking for TIFFReadRGBAStrip in -ltiff... no checking if TIFF package is complete... no checking for JBIG support ... checking jbig.h usability... no checking jbig.h presence... no checking for jbig.h... no checking for jbg_dec_init in -ljbig... no checking if JBIG package is complete... no checking for XML support ... checking for xml2-config... no checking libxml/parser.h usability... no checking libxml/parser.h presence... no checking for libxml/parser.h... no checking for xmlParseExternalEntity in -lxml2... no checking if XML package is complete... no checking if WMF package is complete... no |
Abhilfe:
Installieren Sie bevor Sie den Befehl
“./configure“ eingeben alle notwendigen „devel“-Pakete:
„freetype2-devel“, „gd-devel“,“glibc-devel“,„liblcms-devel“,„libtiff-devel“, „libpng-devel“,„libjpeg-devel“,
„libjasper-devel“, „libzip-devel“, „libbz2-devel“ „libxml2-devel“,
„perl-Devel-CoreStack“, „zlib-devel“
|
… Geometry.cpp:192: error: 'strcpy' was not declared in this scope make[3]: *** [Geometry.lo] Fehler 1 make[3]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++/lib' make[2]: *** [all-recursive] Fehler 1 make[2]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++/lib' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/root/GraphicsMagick-1.1.15/Magick++' make: *** [all-recursive] Fehler 1 |
Ursache:
Dieser Fehler ist bei mir aufgetreten wenn der “./configure“ Befehl ohne die Optionen ausgeführt wird.
Abhilfe:
Führen Sie den „./configure“ mit allen angeführten Optionen aus:
SLES 11 :~# ./configure --enable-static --disable-shared --with-tiff --without-perl --without-magick-plus-plus --without-x --without-fpx --without-threads --without-dps --without-lcms --without-trio --without-wmf --disable-installed --enable-ltdl-convenience --enable-magick-compat CC=gcc CFLAGS='-O2 -pipe' LDFLAGS= LIBS= CXX=g++ CXXFLAGS='-O2 -pipe'
Es wurde eine PDF Datei in das Verzeichnis “/srv/www/htdocs/” kopiert, trotzdem kommt beim Aufrufen von „gm indentify“ eine Fehlermeldung.
|
SLES11:~/GraphicsMagick-1.1.15 # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf /usr/local/bin/gm identify: Request did not return an image. |
Abhilfe:
Kontrollieren Sie den Namen der PDF Datei im Verzeichnis „/srv/www/htdocs/“. Eventuell haben Sie einen anderen Namen für die PDF Datei vergeben.
Kopieren Sie in das Verzeichnis „/srv/www/htdocs/“ Testweise ein PDF Dokument und benennen Sie es „doc.pdf“ (der Name ist Prinzip egal, muss nur beim Befehl eigegeben werden).
Wenn in einem Terminal Fenster, außerhalb des Verzeichnisses „/usr/local/bin/“ der Befehl „gm identify“ Befehl eingegeben wird, erscheint die nachfolgende Fehlermeldung:
|
SLES 11 :~ # /usr/local/bin/gm identify /srv/www/htdocs/doc.pdf /usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory]. |
Ursache:
Wenn im Verzeichnis „usr/local/bin/“ die Dateien „delegate.mgk“ und „magic.mgk“ vorhanden und Leserechte auf die Dateien vorhanden sind, so ist der wahrscheinlichste Fehler dafür, dass der Suchpfad für die Konfigurationsdateien (*.mgk) nicht stimmt. Der Suchpfad wird durch die Umgebungsvariable „MAGICK_CONFIGURE_PATH“ gesetzt. Eventuell ist die Umgebungsvariable nicht vorhanden oder der Pfad ist falsch.
Abhilfe:
Fügen in die Datei „/etc/bash.bashrc.local“ folgende Zeile ein:
|
… MAGICK_CONFIGURE_PATH=/usr/local/bin … |
Beim Versuch GraphicsMagick-1.3.12, welches über folgenden
Download geladen wurde:
http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.3.12/GraphicsMagick-1.3.12-1.src.rpm
zu installieren, kommen nach Eingabe des Befehls nachfolgende Warnungen
und die Installation wir nicht durchgeführt.
|
SLES 11 :~ # rpm -i GraphicsMagick-1.3.12-1.src.rpm warning: user bfriesen does not exist - using root warning: group home does not exist - using root warning: user bfriesen does not exist - using root: warning: group home does not exist - using root: |
Ursache:
Vermutlich wird diese Version unter dem eingesetzten Linux beim SLES11 noch nicht unterstützt, oder die Kompilierung ist für diese Linux Version nicht vorgesehen.
Abhilfe:
Greifen Sie auf eine ältere Version von GraphicsMagick zurück, oder verwenden Sie einen Tarball (Endung *.tar.gz“) welchen Sie selbst kompilieren können.
Ein anderes Paket zur Graphikumwandlung wäre ImageMagick, das Sie anstelle von GraphicsMagick benutzen können
1. Prüfen Sie, ob
Sie die ImageMagick Programme "combine", "convert" und
"identify" direkt (ohne Pfadangabe) gestartet werden können. Wenn die
Befehle nicht funktionieren müssen Sie ImageMagick nachinstallieren. Von TYPO3
Enthusiasten wird immer die Verwendung der ImageMagick Version 4.2.9 empfohlen.
Download von:
http://files.filefront.com/ImageMagick+429/;5098936;/fileinfo.html/1/1
oder
http://www.website4all.de/support/downloads.html
Das RPM Paket können Sie von
http://sourceforge.net/project/showfiles.php?group_id=20391
oder mit einem „wget“-Download von
„wget http://typo3.mitka.us/filez/typo3-ImageMagick4-4.2.9-1.3.i386.rpm“
2. Wenn Sie ein
Tarball-Paket beinhaltet die Dateiendung „tar“ down geladen haben müssen Sie
diese zuerst mit folgenden Befehl entpacken:
SLES11:~ # tar xzf imagemagick-4.2.9_i386-static-3.tar.gz
Wenn Sie das RPM Pakte downgeladen haben installieren Sie wie folgt:
SLES11:~ # rpm –ivh typo3-ImageMagick4-4.2.9-1.3.i386.rpm
3. Kopieren Sie
danach, wenn lokalen Server verwendet wird, die Dateien in folgendes
Verzeichnis. Die beste Wahl unter Linux wäre das Verzeichnis "/usr/local/bin"
weil das TYPO3 Install Tool automatisch in diesem Verzeichnis sucht.
Beim entpackten Tarball mit:
SLES11:~ # cp imagemagick-4.2.9/bin/* /usr/local/bin
Beim RPM Paket mit:
SLES11:~ # cp /usr/lib/typo3/ImageMagick4/* /usr/local/bin
Wenn es sich um einen gehosteten Server handelt kann aber auch unter dem Web
Server Homeverzeichnis "htdocs/" ein eigenes Unterverzeichnis
"im" angelegt werden. Danach die Dateien aus jeweiligem
Quellverzeichnis in dieses „im“ Verzeichnis per FTP kopieren.
4. Für die
delegierte Ausführung von Programmen, durch das ImageMagick Programm, müssen
Sie jetzt noch die Dateien „delegate.mgk“ aus dem Verzeichnis „share“ in das
Verzeichnis „/usr/local/bin“ kopieren.
SLES11:~ # cp imagemagick-4.2.9/share/delegates.mgk /usr/local/bin/
oder beim RPM
SLES11:~ # cp /usr/lib/typo3/ImageMagick4/delegates.mgk /usr/local/bin
5. Testen Sie auf
einem lokalen Server, ob danach „combine“, „convert“ oder „identify“ ohne
Pfadangabe in einem Terminalfenster aufgerufen werden kann.
6. Wenn Sie den Safemode
(save_mode) von PHP aktiviert haben so müssen Sie als Verzeichnis für
Ausführbare Dateien in der php.ini folgendes eingeben:
|
.. Safe_mode = on … safe_mode_exec_dir = /usr/local/bin/ … |
Damit können die ImageMagick Programme über PHP gestartet werden.
Nach Installation und Einrichtung von ImageMagick werden bei den Grafiktests keine Grafiken angezeigt. Alle Tests laufen auf Fehler.
Abhilfe:
Deaktivieren Sie die Option „[im_useStripProfileByDefault]“ im Install Toll bei „All Configuration“.

WICHTIG Wenn Sie die Tests schon mehrmals durchgeführt haben, löschen Sie die temporären Dateien (Bilder) der vorherigen Tests aus dem Verzeichnis „typo3temp“ und „typo3temp/pics“. Diese Dateien beginnen alle mit „install…“. Ansonsten erhalten Sie bei den Tests keine korrekten Ergebnisse. Zusätzlich speichern Sie wenn Sie von GraphicsMagick auf eine andere Version, oder auf ImageMagick wechseln, unter „Basic Configuration“ mit der Schaltfläche „Update localconf.php“ ihre Konfiguration nochmals ab.
1. Kontrollieren Sie
danach indem Sie das TYPO3 „Install Tool“ starten die Funktion von ImageMagick.
2. Kopieren Sie
dazu eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „/srv/www/htdocs/cms/typo3conf“
oder erstellen Sie auf einen SLES11 Server mit ‚“touch ENABLE_INSTALL_TOOL“ die
Datei im Verzeichnis „typo3config“.
3. Starten sie das
TYPO3 „Install Tool“ wenn Sie direkt am Server arbeiten mit http://localhost/typo3/install, auf
einen Server eines externen Internet Providers mit http://www.ihredomain.ihrdomainendung/typo3/install
Hinweis Bei sehr vielen Installationen auf Servern
eines Internet Providers ist das Verzeichnis „install“ überhaupt nicht
vorhanden. Um die Tests auf solchen Installationen durchzuführen, müssten Sie
das „install“ Verzeichnis von einer lokalen Kopie von TYPO3 (mit der gleichen
Versionsnummer) auf den Server kopieren.
4. Gehen Sie jetzt
zuerst auf den Punkt „Basic Configuration“ und Kontrollieren Sie ob der Anzeige
überall grüne Überschriften mit dem Häkchen
angezeigt
bekommen.
5. Alle Zeilen mit blauen Überschriften mit dem Symbol
beinhalten zusätzliche Informationen zum installierten System oder zu den
Tests.
6. Wenn Sie eine gelbe Überschrift mit Warnsymbol
angezeigt
bekommen, wurde beim Test einen Abweichung oder ein Fehler festgestellt. Lesen
Sie dann die zugehörigen Texte, diese beinhalten Informationen und Ratschläge
wie es zu diesem Zustand gekommen ist, oder wie Sie diesem möglichen Fehler
beheben können.
7. Wenn Sie rote Überschriften mit dem Symbol
ist
ein Fehler aufgetreten welcher behoben werden muss.
8. Sollte unter
Punkt „Basic Configuration“ alles Ok sein gehen Sie weiter zu Punkt „Image
Processing“. Hier können Sie die Funktion der Grafikfunktionen testen.
Dabei sollten die angezeigten Bilder auf der rechten und linken Seite jeweils
gleich sein außerdem sollte die Dateigröße der Bilder nicht zu viel abweichen.
TYPO3 empfiehlt die Verwendung von GIF-Dateien den nicht alle Browser unterstützen im Moment die Verwendung von PNG-Dateien.
Wenn Sie aber GIF-Dateien verwenden, so wird die Aktivierung der LZW Komprimierung empfohlen, die GIF-Dateien komprimiert werden.

Gehen Sie jetzt zum Ende der Seite hier sollte folgendes angezeigt werden:

Mit „Update localconf.php“ können Sie Einstellungen übernehmen.
Nach dieser Anzeige sollte mit der Installation alles in Ordnung sein. Sie können jetzt die Grafikfunktionen im TYPO3 Install Toll unter „Images Processing“ überprüfen.
Im TYPO3 Install Tool auf der Seite „Image Processing“ wird
folgendes angezeigt:

Unterhalb befindet sich das Menü für die Grafiktest, welche Sie der Reihe nach ausführen sollten:

Dabei sollten die angezeigten Bilder auf der rechten und linken Seite jeweils gleich sein, außerdem sollte die Dateigröße der Bilder nicht zu viel abweichen.
TYPO3 empfiehlt die Verwendung von GIF-Dateien den nicht alle Browser unterstützen im Moment die Verwendung von PNG-Dateien.
Wenn Sie aber GIF-Dateien verwenden, so wird die Aktivierung der LZW Komprimierung empfohlen, die GIF-Dateien komprimiert werden.

Setzen Sie ein Häkchen bei „Check LZW capabilities“ und geben Sie den Pfad zu Ihren ImageMagick Dateien ein. Klicken Sie danach auf „Send“, dann sollten die Zeile „gif_capability“ mit „LZW“ im Informationsfenster erscheinen.


Ursache:
1. ImageMagick (oder GraphicsMagick) nicht installiert oder fehlerhaft installiert. Prüfen Sie, ob Sie die ImageMagick Programme "combine", "convert" und "identify" direkt (ohne Pfadangabe) gestartet werden können.
2. Haben Sie den Safemode (save_mode) von PHP aktiviert und den Pfad der auf die ImageMagick Dateien verweist, nicht unter "safe_mode_exec_dir" eintragen.
3. Bei meiner Installation lag die Fehlermeldung daran, dass bei aktivierten AppArmor der SLES11 Konfiguration. Es war das vordefinierte „usr.sbin.httpd2-prefork“ Profil vom Verzeichnis „/etc/apparmor/profiles/extras/“ in das Verzeichnis „/etc/apparmor.d“ kopiert worden. Und das Profil war auf „enforce“ gestellt.
4. Ursache könnten auch mehrfache Einträge für ImageMagick in der Datei „typo3conf/localconf.php“ sein. Bei mir ist dies z.B. nach einen Update und einem Transfer der TYPO3 Seite auf einen anderen Server passiert.
Abhilfe:
Je nach festgestellter Ursache gehen Sie nach den gleichen Punkt vor.
1. Für Installation von ImageMagick siehe Kapitel „Installation von ImageMagick“
2. Wenn Sie den PHP Safemode (save_mode) aktiviert haben muss der Pfad für ImageMagick beim Parameter "safe_mode_exec_dir“ der Pfad zu den ImageMagick Dateien eingetragen werden z.B. „/usr/local/bin"
3. Über YaST „Novell AppArmor“ - „AppArmor-Kontrollleiste“ unter „Profilmodus konfigurieren“ auf die Schaltfläche „Konfigurieren“ klicken. Wählen Sie das Profil „usr.sbin.httpd2-preford“ und wechseln Sie den Modus auf „complain“. Profil danach Aktualisieren und wieder auf „enforce“ stellen.
4. Entfernen Sie eventuell Mehrfacheinträge direkt aus der Datei „localconf.php“ mit einem Editor. Achten Sie dabei auf doppelte Einträge von „[im]“, „[im_path]“, etc.
Testen von ImageMagick:
Danach das „Install Tool“ von TYPO3 öffnen und die Funktion von ImageMagick kontrollieren. Folgende Anzeige unter „Basic Configuration“ sollte erscheinen:

oder unter „4: Image Processing“ sollte folgendes stehen


Ursache:
1. Entweder ist ImageMagick (oder GraphicsMagick) auf dem Server nicht installiert
2. Es könnte der Safemode (save_mode = On) von PHP aktiviert in der Datei „/etc/php5/apache2/php.ini“ sein. Wenn der Safemode von PHP aktiviert ist, müssen Sie den Pfad für zu den ImageMagick Dateien unter „safe_mode_exec_dir“ eintragen.
3. Vielleicht ist ImageMagick unter „All Configuration“ nicht aktiviert oder der ImageMagick Pfad wurde dort falsch eingetragen.
Abhilfe:
1. Prüfen Sie, ob Sie die ImageMagick Programme „combine“, „convert“ und „identify“ direkt gestartet werden können.
2. Wenn Sie den PHP
Safemode (save_mode) aktiviert haben, muss der Pfad für ImageMagick im
folgenden Parameter eingetragen werden:
„safe_mode_exec_dir = /usr/local/bin/
Hinweis Der letzte Schrägstrich ist Wichtig (..../) außerdem
können Sie nur ein einziges Verzeichnis angeben. Danach den
Apache Server neustarten mit „rcapache2 restart“.
3. Aktivieren Sie
die ImageMagick Funktion unter „All Configuration“:
[GFX][image_processing]
= 1
[GFX][im] = 1
[GFX][im_path] =
/usr/local/bin/
[GFX][im_path_lzw] = /usr/local/bin/
Wenn Sie einen gehosteten Server verwenden, muss dies durch den Provider durchgeführt werden, außer der Provider stellt eine „php.ini“ zur Selbstkonfiguration zur Verfügung.
Nach Aufruf eines „Image processing“ Tests kommen nur Sonderzeichen.

Ursache:
Zuvor wurde in der Datei „/etc/php5/apache/php.ini“ die Option „zlib.output_compression = On“ aktiviert. Danach wurden immer nur Sonderzeichen ausgegeben.
Abhilfe:
Schalten Sie die Option wieder auf „zlib.output_compression = Off“.
Für PNG Bilder werden keine Thumb-Bilder erzeugt. Folgender Fehler wird im Backend angezeigt:

Ursache:
Die Konfiguration von GDLib“ für PNG Grafiken wurde nicht installiert oder ist nicht korrekt eingerichtet. Kontrollieren Sie im TYPO3 „Install Tool“ durch klicken auf „Image Processing“ die augenblicklichen Einstellungen der „Image Processing“ Komponenten.
Kontrollieren Sie auch im TYPO3 „Install Tool“ unter „All Configuration“ die folgende Option:
Abhilfe:
Kontrollieren Sie zuerst im TYPO3 „Install Tool“ die ImageMagick Funktionen unter Punkt „Image Processing“. Wenn Sie hier keinen Fehler haben gehen Sie auf Punkt „All Configuration“ und setzen Sie die Option:
[GFX][thumnails] = 1
Damit sollten die Grafiken angezeigt werden, wenn nicht noch ein anderes Problem mit der Grafikfunktion existiert.

Ursache:
Sie Verwenden die FreeType Version2 und bei den Einstellungen für Freetype wird folgendes angezeigt
“Freetype DPI: 72 (Should be 96 for Freetype 2)”
Abhilfe:
Setzen sie unter „1: Basic Configuration“ bei der Option
[GFX][TTFdpi]= 96
Klicken Sie danach auf “Update localconf.php”

Ursache:
In TYPO3 Install Tool wurde Testweise die Einstellung „[GFX][jpg_quality]“ von “70“ auf „100“ eingestellt. Danach wurde der Fehler bei allen „Reading image formats“ Test angezeigt.
Abhilfe:
Nach Änderung des Wertes im TYPO3 Install Tool unter „All Configuration“ auf den Wert [GFX][jpg_quality]=70 war wieder alles OK.
Dieser Fehler tritt bei allen „Read“ Grafikformaten auf.
Hier wird bei der Testgenerierung die Optionen „+profile“ in der Kommandozeile verwendet.
Abhilfe:
Wenn Sie bei jeden Read Test einen Fehler bekommen sollten
Sie wenn ImageMagick oder GraphicsMagick erkannt wird im TYPO3 Install Tool
unter „All Configuration“ die Option:
„[im_useStripProfileByDefault] = 0“ einstellen.
Damit wird der Eintrag „+profile“ aus der Kommandozeile entfernt und die Grafiktest sollten alle durchlaufen.

Ursache:
1. Geben Sie in
einem Terminalfenster „gm –version“ ein.
Suchen Sie in der Ausgabe die Zeile welche mit „TIFF“ beginnt, wenn dahinter
ein „no“ steht wurde der TIFF Support nicht in das „gm“ Paket kompiliert.
Beispielausgabe mit „TIFF no“:
|
Loadable Modules no PNG yes TIFF no TRIO no |
2. Zweite
Möglichkeit wäre das der TIIF Support nicht in das „gm“ Programm kompiliert
werden kann, weil die Systemvoraussetzungen nicht vorhanden sind. Dies zeigt
sich schon beim „configure…- -with-tiff …“ wenn folgendes am Bildschirm
angezeigt wird:
|
checking for TIFF support ... checking tiff.h usability... no checking tiff.h presence... no checking for tiff.h... no checking tiffio.h usability... no checking tiffio.h presence... no checking for tiffio.h... no checking for TIFFOpen in -ltiff... no checking for TIFFClientOpen in -ltiff... no checking for TIFFIsByteSwapped in -ltiff... no checking for TIFFReadRGBATile in -ltiff... no checking for TIFFReadRGBAStrip in -ltiff... no checking if TIFF package is complete... no |
Abhilfe:
1. Kompilieren Sie
das GraphicsMagick Paket neu mit dem Support für „TIFF“ Grafiken. Dazu müssen
Sie den Parameter „--with-tiff“ beim „configure“ angeben.
2. In diesem Fall müssen Die die Dateien welche für den TIFF Support notwendig sind, zuerst zur Verfügung stellen. Das sind die Pakete „tifflib“ und „tifflib-devel“ um eine korrekte Kompilierung für GraphicsMagick durchzuführen.

Ursache:
Dieser Fehler ist beim mir bei Einsatz einer Fehlerhaft kopilierten GraficsMagick Version aufgetreten.
Abhilfe:
Kompilieren Sie Ihre GraficsMagick Version nochmals neu mit der V1.1.15

Abhilfe:
Dieser Fehler kann mit dem Fehler „Read PNG“ gleichgesetzt werden in der Befehlzeile befindet sich „+profile“.

oder


Ursache:
1. Entweder ist
Ghostscript (ghostscript-library-…) auf dem Server nicht installiert oder TYPO3
kann auf das Binär-Verzeichnis nicht zugreifen. Das Programm sollte sich in
einem der Standardverzeichnisse (z.B. /usr/bin/) befinden. Prüfen Sie ob das
Programm ohne Pfadangabe durch Eingabe von „gs -version“ gefunden wird.
Wenn sich das Ghostscript Programm mit folgender Anzeige meldet ist alle OK:
|
SLES 11 :# gs -version ESP Ghostscript 8.15.3 (2006-04-19) Copyright (C) 2004 artofcode LLC, Benicia, CA. All rights reserved.. |
2. Nachdem Ghostscript funktioniert, testen wir „Delegate“ vom Programmaufruf, indem Sie den angezeigten Befehl bei „Read PDF“ (durch kopieren) in ein Terminalfenster einfügen und ausführen:
|
SLES 11 :#/usr/local/bin/identify /srv/www/htdocs/rpw/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf[0] /srv/www/htdocs/rpw/typo3/sysext/install/imgs/pdf_from_imagemagick.pdf=>/tmp/magicol7JQW 595x842 DirectClass 12472b PDF 1s |
Wenn sie die obige Ausgabe erhalten, wird der „Delegate“ ausgeführt, d.h. die Datei “delegate.mgk” (oder „magic.mgk“) wurde gefunden.
Wenn Sie nach Ausführung des Befehls folgende Fehler erhalten, kontrollieren Sie ob die Dateien „delegate.mgk“ und GraphicsMagick „magic.mgk“ vorhanden sind:
|
/usr/local/bin/gm identify: Unable to access configuration file (delegates.mgk) [No such file or directory]. |
3. Kontrollieren Sie ob Sie die Umgebungsvariable für „MAGICK_CONFIGURE_PATH“ vorhanden ist. Bei manchen Installationen funktioniert der „Delegate“ nicht ohne diese Variable:
|
SLES 11 :~ # echo $MAGICK_CONFIGURE_PATH /usr/local/bin |
Wenn nichts angezeigt wird, wurde keine globale Umgebungsvariable für „MAGICK_CONFIGURE_PATH“ festgelegt. Siehe Kapitel „8.2.1.1 Prüfen von „Delegate“ in einem Terminalfenster“.
4. Ein weiteres Problem könnte durch eine Tarball-Installation von ImageMagick zustande kommen. Kontrollieren Sie mit „gm –version“ mit welchen Einstellungen die Kompilierung von ImageMagick oder GraphicsMagick vorgenommen wurde.
Abhilfe:
1. Installieren Sie
Ghostscript bei SLES 11 das Paket „ghostscript-library-8.15.4-16.5“
SLES 11 -2 # rpm –ivh ghostscript-library-8.15.4-16.5
Mit folgenden Befehl können Sie feststellen von welchen Pakte „gs“ stammt:
SLES 11 :~ # rpm –qf /usr/bin/gs
2. Kopieren Sie
Datei „delegates.mgk“, oder für GraphicsMagick noch zusätzlich die „magic.mgk“,
in das Verzeichnis in welchen sich die ausführbaren Dateien für ImageMagick und
GraphicsMagick befinden.
Für das entpackten ImageMagick 4.2.9:
|
SLES 11 :~ # cp imagemagick-4.2.9/share/delegates.mgk /usr/local/bin/ |
Für den Tarball vom GraphicsMagick aus dem entpackten Verzeichnis:
|
SLES 11 :~ # cp config/delegates.mgk config/magic.mgk /usr/local/bin/ |
3. Bei ImageMagick und GraphicsMagick können Sie die Umgebungsvariable für den Suchpfad permanent in der Datei „/etc/bash.bashrc.local“ durch folgende Zeile festlegen:
|
.. MAGICK_CONFIGURE_PATH=/usr/local/bin … |
Danach den Linux
Server neu starten nicht vergessen.
WICHTIG Unter SLES 11 darf die Definition nicht in der „/etc/profile.local“ erfolgen, da die Definition bei einem Server Neustart ansonsten nicht in PHP übernommen wird.
4. Wenn das alles nichts hilft, müssen Sie eventuell ImageMagick oder GraphicsMagick nochmals neu installieren, oder ggf. diesen Fehler beim Internet Provider ein melden.

Ursache:
Als Ursache wird bei dem Test folgendes angezeigt.
|
Note on
gif_compress() function: |
oder auch
|
Note on
gif_compress() function: |
Dies bedeutet, dass keine Komprimierung über „IM“ oder „GD“ stattgefunden hat.
Die Ursache dieses Fehlers ist noch unklar.
Abhilfe:
In der „/etc/php5/apache/php.ini“ wurde die „zlib“-Komprimierung aktiviert
|
…: |
Danach wurde beim gleichen Test folgendes angezeigt:
|
Note on
gif_compress() function: |
Der Fehler konnte im Moment noch nicht behoben werden.

Ursache:
Durch die Aktivierung von Parameter [GFX][png_truecolor] wird die PNG Datei beim Schreiben wesentlich größer, als das Original. Aktivieren Sie diese Option nur wenn Sie wirklich TrueColor für PNG brauchen.
Abhilfe:
Den Wert [GFX][png_truecolor] = 0 damit funktionierte der „Write PNG“ Test wieder.

Abhilfe:
Eventuell wurde bei der Kompilierung von GraficsMagick die Funktion
für „PNG“ nicht mit kompiliert. Sie sollten in nach Ausführen von „./configure“
auf die PNG Zeile achten:
|
… PNG --with-png=yes no … |
Wenn in dieser Zeile „no“ steht müssen Sie vor der Kompilierung das Pakte
„libpng-devel“ installieren.
Dabei wir das erzeugte Bild mit schwarzen Hintergrund angezeigt.

Ursache:
Dieser Fehler ist bei mir bei der GraphicsMagick ab der Version 1.3.x aufgetreten. Bei älteren GraphicsMagick Versionen unter Version 1.3.x konnte der Fehler nicht festgestellt werden.
Abhilfe:
Verwenden Sie die GraphicsMagick Version ab 1.1.15
Dieser Fehler tratt bei mir beim Einsatz von ImageMagick 4.2.9 auf.

Abhilfe:
Deaktivieren Sie die Option „[gdlib_png]“ unter „All
Configuration“.


oder

Ursache:
Wenn Sie bei ImageMagick eine Version höher 4.2.9 verwenden oder bei Verwendung von GraphicsMagick 1.1.6 ist dieser Fehler aufgetreten. Sowie beim ImageMagick 5 sieht man kein Hard- oder Soft-Shadow des Textes.
Abhilfe:
Verwenden sie ImageMagick 4.2.9 oder GraphicsMagick ab Version 1.1.15

Ursache:
Der Fehler tritt besonders bei Verwendung von GraphicsMagick auf.
Abhilfe:
Im TYPO3 Install Tool unter „All Configuration“ folgende Einstellung umgestellt:
[GFX][gdlib_png] = 0
Danach wurde der Test korrekt beendet und die Grafik war gleich groß.

Ursache:
Der Fehler tritt besonders bei Verwendung von GraphicsMagick auf.
Die Ursache des Fehlers ist noch unklar.
Abhilfe:
Mit der GraficsMagick Version 1.1.15 trat der Fehler aber nicht auf.
Die Speicherung von Passwörtern in Klartext sollte unter allen Umständen vermieden werden. Hier wurde bis jetzt als Lösung eine Speicherung des Passwortes als sogenannter „Hash“ (Prüfsumme) Wert verwendet. Später beim Login, wird das eingegeben Klartextpasswort, auch wieder in den „Hash“ Wert umgrechnet und mit abgespeicherten „Hash“ Wert verglichen. Dies ist die bis jetzt verwendete Methode für den TYPO3 Backend Login.
In der Zwischenzeit stellte sich heraus, dass auch diese Methode in der heutigen Zeit nicht mehr genug Sicherheit bietet. Daher wurde eine zusätzliche Sicherheitstufe bei der Generierung des „Hash“ Wertes eingebaut und ein sogenanntes „Salt“ (Salz) zum „Hash“ hinzugefügt. Ein „Salt“ ist eine zufällige Zeichenkette, welche vor der Erstellung der Prüfsumme (Hash) an das Passwort angehängt wird.
Bereit seit der Version TYPO3 4.3 bietet sich die Verwendung der Systemextension „saltedpassword“ an, welche für das Backend und das Frontend funktioniert. Um den Übertragungsweg abzusichern wird nun nicht mehr eine „JavaScript“-Methode (TYPO3 Standard) verwendet, sondern es ist nun eine SSL Verbindung (https) oder die Extension „rsaauth“ notwendig.
1. Voraussetzung
für die Extension „rsaauth“ ist das PHP Modul „OpenSSL“ notwendig.
Öffnen Sie „YaST“ und kontrollieren Sie ob die Linux Pakete für „OpenSSL“
installiert sind.

2. Für PHP benötigen
Sie noch zusätzlich das „php5-openssl“. Installieren Sie das Modul über
den „YaST“ wenn es noch nicht vorhanden ist.
![]()
Starten Sie den Apache Server neu mit „rcapache2 restart“.
Hinweis Bei neueren TYPO3 Installationen bei einem
ISP sollten dieses Modul schon vorhanden und aktiviert sein.
3. Die Extension „rsaauth“
und „saltedpassword“ werden seit der Verison TYPO3 4.3 schon als
Systemextension mitgeliefert und müssen nur mehr durch klicken auf „Install
Extension“ aktiviert werden.
Zuerste aktivieren wir die Extension „rsaauth“
![]()
Wenn das PHP Modul „php5-openssl“ nicht installiert ist müssen Sie ein Pfad bei
„Path to the temporary directory“ eingeben der sich ausserhalb Ihres Website
Root Verzeichnisses (htdocs) befindet:

Hinweis Wenn Sie das PHP Modul „php5-openssl“
verwenden, brauchen sie hier keinen Pfad festzulegen.
4. Öffnen Sie jetzt
das TYPO3 Install Tool und geben Sie bei der Option „[BE][loginSecurityLevel]“
und bei „[FE][loginSecurityLevel]“ jeweils „rsa“ ein.
In der „localconf.php“ sieht das ganze dann so aus:
|
… $TYPO3_CONF_VARS['BE']['loginSecurityLevel'] = 'rsa'; $TYPO3_CONF_VARS['FE']['loginSecurityLevel'] = 'rsa'; … |
Hinweis
Sie könnten bei „[FE][loginSecurityLevel]“ auch „normal“ (nicht
empfohlen) eingeben. Besser ist es gleich überal „rsa“ Authentifizierung zu
verwenden.
5. Als nächstes
Aktivieren Sie die Extension „saltedpassword“.
![]()
Hinweis Für das Backend muss entweder „rsaauth“
aktiviert werden (siehe oben), oder im TYPO3 Install Tool die Option „[BE][lockSSL]“
auf einen Wert größer 0 gesetzt werden. Hier wird vorausgesetzt das Sie eine
SSL Verbindung (https) zum Server möglich ist. In diesem Fall wird die Option
„[FE][loginSecurityLevel]“ auf „normal“ eingestellt
Sie sollten danach folgendes angezeigt bekommen.

6. Sie könnten
jetzt noch in der Konfiguration der Extension festlegen, ob die Funktion
„SaltedPassword“ für das Frontend und das Backend verwendet werden soll (nicht
zu verwechseln mit der „rsaauth“). Außerdem können Sie die „Hashing Methode“
für die Passwörter festlegen. Standard ist „MD5 salted hashing (secure)“.

7. Die Passwörter
werden jetzt beim nächsten Login automatisch auf „SaltedPassword“ konvertiert.
8. Wenn Sie gleich
alle vorhandenen Passwörter auf „SaltedPasswort“ kovertieren wollen legen Sie
einen neuen „Task“ an, welcher dies ausführt.
Wählen Sie aus der Navigation „Scheduler“ aus.
![]()
Klicken Sie auf „Add Task“.
![]()
Wählen Sie jetzt „Convert user password to salted hashes“ aus mit Typ auf
„Single“.

Danach sollte der „Task“ wie folgt angezeigt werden. Klicken Sie auf den „Task“
und dann auf „Execute“.

9. Sie können sich
jetzt das Ergebnis über „phpMyAdmin“ in den Tabellen „be_user“ oder „fe_user“
ansehen:

Sie erkennen die konvertieren „SaltedPassword“ an den vorangestellten Tetxt „M$1$“.
Wenn Sie nach der Aktivierung der Extension „rasauth“ im
Backend folgende Meldung erhalten

Ursache:
Zuerst einmal ist hier auf dem Server das PHP Modul
„php5-openssl“ nicht installiert. Daher wird die Unterstützung mit einen
CMD-Line Utility durchgeführt welche weniger sicher und lansamer ist als wenn
das PHP Modul installiert wurde.
Zweitens wurde in der Konfiguration der Extension „rsaauth“ unter „Path to the
temporary directory“ kein Pfad für temporären Dateien hinterlegt welche durch
die Extension generiert werden. Dies ist ein Sicherheitsrisiko.
Abhilfe:
Sie können die Extension auch ohne das PHP Modul
„php5-openssl“ verwenden, mit der Einschränkung das diese Methode nicht so
sicher ist als wenn Sie das PHP Modul installiert haben.
Geben Sie unter „Path to the temporary directory“ einen Pfad ausserhalb Ihres
Website Root (htdocs) Verzeichnisses ein z.B. „/srv/www/rsasltpswd/. Vergeben
Sie dem Verzeichnis die Zugriffsberechtigung „0700“ und den Besitzer auf
„wwwrun“:
SLES11:/srv/www # chown
wwwrun:root rsasltpswd/
SLES11:/srv/www # chmod 0700 rsasltpswd/
Ersetzen Sie den Namen „rsasltpswd“ durch den Namen Ihres temporären Verzeichnisses.

Ursache:
Sie haben die Backend und die Frontend Authentifzierung für die Extension „rsaauth“ nicht auf „rsa“ umgestellt.
Für die Backend Authentifzierung und die Funktion von „rsaauth“ ist es zwingend notwendig im Backend auf die “rsa“ Authentifzierung umzustellen.
Abhilfe:
Gehen Sie in das TYPO3 Install Tool unter „All Configuration“ und geben Sie bei „[BE][login SecurityLevel]“ den Wert „rsa“ ein. Wenn Sie dies auch für das Frontend einstellen wollen (empfohlen), so geben Sie bei „[FE][login SecurityLevel]“ auch „rsa“ ein.
In den meisten Browser (z.B. IE, Firefox) kann links vor dem
Webseitennamen ein kleines Icon (16 x 16 Pixel) angezeigt werden. Dazu ist eine
Datei mit Name „favicon.ico“ welche mit 16x16 Pixel angelegt wurde (es gibt
dazu eigene Programme).
Die Datei muss dann in den Ordner „fileadmin/“ kopiert
werden (fileadmin/favicon.ico)
Das wird in TYPO3 wie folgt eingebunden:
Im Root Template Setup eintragen:
|
… page = PAGE ... page.shortcutIcon = fileadmin/favicon.ico … |
Danach noch den TYPO3 Cache löschen, und im Web Browser muss man die Seite neu laden.
Dies können Sie im Backend von TYPO3 durch folgenden Aufruf durchführen.
Führen Sie unter „Admin Tools“ – „DB Überprüfung“ – „Update now“ eine Index Überprüfung der Datenbank durch. Danach wählen Sie „Check now“
|
Warning: Invalid argument supplied for foreach() in /srv/www/htdocs/typo3_src-4.5.0/t3lib/class.t3lib_refindex.php on line 1020 |
Ursache:
Noch nicht ermittelt.
Abhilfe:
Löschen Sie Dateien welche mit „temp_“ beginnen aus dem Verzeichnis „typo3conf“.
Im TYPO3 „Install Tool“ können Sie unter „Basic Configuration“ die Funktion vom „Sendmail“ Programm testen. Geben Sie die gewünschte Email-Adresse in das Feld ein und klicken Sie auf die Schaltfläche „Send“.
Ab TYPO3 Version 4.4.0 können nur noch Emails versendet werden wenn der SafeMode ausgeschaltet ist. Die PHP_MAIL-Funktion wird mit allen 5 Parametern genutzt und der 5. Parameter funktioniert nur bei „SafeMode = off“.
Lösung, wenn „SafeMode=on“ ist:
Über einen Hook in der Datei "localconf.php"
Anleitung:
Inhalt in des unten angeführten Scripts VOR der Zeile "?>" (am Ende) in die Datei "localconf.php" einfügen. Die Datei ist im Ordner "typo3conf" zu finden.
|
// Email mit SafeMode = ON versenden // Userfunktion geschrieben am 04.07.2010 von J.Grewe if (!function_exists('user_fcmail')) {
$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';
function user_fcmail($parameters) {
$to = $parameters['to']; $subject = $parameters['subject']; $messageBody = $parameters['messageBody']; $additionalHeaders = $parameters['additionalHeaders']; $additionalParameters = $parameters['additionalParameters'];
$success = mail($to, $subject, $messageBody, $additionalHeaders);
return $success;
} } |
Danach sollte das „sendmail“ auch mit dem „SafeMode=on“ funktionieren.
Folgende Meldung wird angezeigt nach dem Versuch an eine Adresse zu senden, aber es kommt kein Email an.
|
0 MAIL WAS SENT TO: office@mustername.at |
Ursache:
Die Antwortadresse des Emails wird auf null@www.realpowerwork.com gesetzt. Manche Email Server versenden keine Emails wenn der Domänenname in der Antwortadresse nicht aufgelöst werden kann. Kontrollieren Sie dazu die Logdatei „/var/log/mail“.
Der Fehler unten wurde ausgeben von Hotmail diese Empfangen keine Emails von dynamischen IP-Adressen.
|
Oct 9 20:52:44 SLES11 postfix/smtp[14917]: 77C9E1152FE: to=<myoffice@hotmail.com>, relay=mx2.hotmail.com[65.54.188.72]:25, delay=1.1, delays=0.13/0.01/0.8/0.18, dsn=5.0.0, status=bounced (host mx2.hotmail.com[65.54.188.72] said: 550 DY-001 (BAY0-MC1-F29) Unfortunately, messages from 188.23.21.214 weren't sent. Please contact your Internet service provider. You can tell them that Hotmail does not relay dynamically-assigned IP ranges. You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors. (in reply to MAIL FROM command)) |
Der Fehler sagt aus, das es nicht erlaubt ist Emails von einem Server mit einer dynamischen IP-Adresse zu versenden. Diese Mledung können Sie immer dann erhalten wenn Sie versuchen von einem Server wecher hinter einem privaten ADSL Anschluß eines Internet Providers befindet, da diese fast immer die IP-Adressen dynamisch vergeben.
Abhilfe:
Entweder Sie haben die Mlglichkeit beim Internet Provider durch Umstellung ihres Anschlusses (meist auf „Business Account“) eine fixe IP-Adresse zu beantragen oder Sie setzen „DynDNS“ ein (suche Sie im Internet).
Bei vielen neuen Installationen wird aus Sicherheitsgründen empfohlen den sogenannten „SafeMode“ von PHP einzuschalten. Damit kann verhindert werden, dass über PHP nicht erlaubte Befehle ausgeführt werden. Ist der „SafeMode“ eingeschaltet werden nur Programme ausgeführt, welche sich in einen angegebenen Verzeichnis z.B. in „/usr/local/bin“ befinden.
Beispiel der Aktivierung in der „php.ini“
|
… SafeMode = On safe_mode_exec_dir = /usr/local/bin … |
Danach den Apache Server neu starten.
Hinweis Der aktivierte „SafeMode“ ist aber auch oft die Ursache für Probleme unter TYPO3. Bei neueren Verisonen von TYPO3 wird empfohlen den „SafeMode“ nicht mehr zu verwenden. Sollten bei Ihnen unerklärliche Probleme auftreten, testen Sie mal den „SafeMode“ zu deaktivieren.
1. Öffnen Sie die Datei „php.ini“ die sich bei den meisten Linux Distributionen im Verzeichnis „/etc/“ oder bei SLES 11 befindet sich diese im Verzeichnis „/etc/php5/apache2/“. Bei einer XAMPP Installation ist diese Datei im Verzeichnis „/opt/lampp/etc/“.
2. Suchen Sie nach der Variablen „memory_limit“. Den Wert auf mindestens „64M“ Einstellen. Speichern Sie die Änderung in der Datei ab.
1. Öffnen Sie die Datei „php.ini“ die sich bei den meisten Linux Distributionen im Verzeichnis „/etc/“ oder bei SLES 11 in „/etc/php5/apache2/“ befindet. Bei einer XAMPP Installation ist diese Datei im Verzeichnis „/opt/lampp/etc/“.
2. Suchen Sie nach der Variablen „file_uploads“. Dieser Wert muss damit Upload überhaupt erlaubt sind auf „file_upload = on“ stehen.
3. Suchen Sie die Variable „upload_max_filesize“. Geben Sie die maximale Dateigröße an die als Upload erlaubt werden soll z.B. „20M“ für 20 Megabyte.
4. Suchen Sie jetzt die Variable „post_max_size“. Geben Sie die gleiche Dateigröße an die Sie vorher bei Punkt 3. Eintragen haben z.B. „20M“ für 20 Megabyte.
5. Speichern Sie die Änderung in der Datei ab.
6. Wechsel Sie jetzt in das TYPO3 „Install Tool“ (zur Aktivierung kopieren Sie eine leere Datei mit dem Namen „ENABLE_INSTALL_TOOL“ in das Verzeichnis „Typo3conf“).
7. Wählen Sie aus dem Menü „4: ALL CONFIGURATION“ aus.
8. Suchen Sie den Eintrag „[maxFileSize]“. Geben Sie für die maximale Dateigröße von 20MB den Wert „20000“ ein. Der Wert sollte mit dem Wert in der „php.ini“ Übereinstimmen.
Hinweis Damit diese Änderungen übernommen werden müssen Sie den Apache Server neu starten mit „rcapache2 restart“.
Beim Versuch eine Extension Datei zu laden erscheint folgende Fehlermeldung.

Abhilfe:
Erweitern Sie die „upload_max_filesize“ von PHP auf mind. 20MB.
Der vsFTP Server wird in die Netzwerkdienste von „xinetd“ integriert. Damit läuft der vsFTP Server nur wenn ein Zugriff über FTP auf den Server erfolgt.
Die Konfiguration des FTP Server erfolgt in diesem Beispiel für das ganze „/srv/www/htdocs/“ Verzeichnis, d.h. das der Zugriff auf alle Unterverzeichnisse erfolgen kann.
1. Bearbeiten Sie
die vsFTP Konfigurationsdatei wie folgt:
|
# Example config file /etc/vsftpd.conf for TYPO3 write_enable=YES ftpd_banner="Welcome to SLES 11 FTP service." hide_ids=YES local_enable=YES local_umask=002 log_ftp_protocol=YES xferlog_enable=YES vsftpd_log_file=/var/log/vsftpd.log connect_from_port_20=YES pam_service_name=vsftpd #listen=YES ssl_enable=NO local_root=/srv/www/htdocs/ |
2. Ändern Sie in
der Datei „/etc/xinetd.d/vsftpd“ die Zeile mit den Eintrag auf:
|
… disable = no … |
3. Starten Sie
jetzt den vsFTP Server durch einen Neustart der „xinetd“ Dienste:
SLES 11:~ # rcxinetd restart
4. Der vsFTP Server
sollte damit laufen.
5. Für den Zugriff
von einen FTP Client sollten Sie für die TYPO3 Verzeichnisse folgend
Berechtigungen vergeben:
SLES11:~ # chown –R wwwrun:ftp /srv/www/htdocs/<typo3
verzeichnis>
SLES11:~ # chmod –R 770 /srv/www/htdocs/<typo3 verzeichnis>
oder
SLES11:~ # chown –R <ftp benutzer>:www
/srv/www/htdocs/<typo3 verzeichnis>
SLES11:~ # chmod –R 770 /srv/www/htdocs/<typo3 verzeichnis>
Beim Upload von Dateien über den vsFTP Server, kann es danach ein Problem mit dem Zugriff von TYPO3 auf diese Dateien geben. Dies kann durch folgende Vorgehensweise verhindert werden.
1. Erstellen Sie einen eigenen Benutzer für den FTP Zugriff z.B. „ftpuser“
2. Dieser Benutzer bekommt als Standardgruppe „www“ zugeteilt.
3. Zusätzlich wird dieser Benutzer der „ftp“ Gruppe zugeteilt.
4. In der vsFTP
Konfigurationsdatei „/etc/vsftd.conf“ wird folgende Option eingestellt
„local_umask=002“
5. Den vsFTP Server neustarten mit „rcxinetd restart“
Wenn Sie jetzt Dateien hochladen, bekommen diese als Benutzer den FTP Benutzer zugeteilt und als Gruppe die „www“. Über die Gruppe müsste jetzt auch TYPO3 darauf zugreifen können, vorausgesetzt auch die Gruppe besitzt die Berechtigung „rwx“.
WICHTIG Um Probleme beim Zugriff zwischen den FTP hochgeladenen Dateien und dem TYPO3 Webbenutzer zu verhindern, sollten Sie den FTP Benutzer der Gruppe „www“ und der Gruppe „ftp“ zuteilen. Beiden Gruppen geben Sie dann Schreibrechte auf die Verzeichnisse und Dateien in welche Ihre TYPO3 Dateien abgelegt werden.
Um TYPO3 Konfigurationen oder auch Inhalte zu verwalten, müssen Sie sich in das sogenannte TYPO3 Backend einloggen.
Sie können das Backend ganz einfach aufrufen indem Sie an den URL der Website den Text „typo3“ anhängen. Für unsere Website wäre das „http://www.cms.com/typo3“
Es erscheint dann das Login Fenster von TYPO3:

Geben Sie als Benutzernamen „admin“ und als Passwort „password“ (wenn Sie es noch nicht geändert haben).
WICHTIG Wenn sich die TYPO3 Website auf einem Server eines Internet Providers befindet, sollten Sie den Login und das Passwort per Email nach der Einrichtung der Website erhalten haben.
Der Extension Manager ist eine der Hauptkomponenten von TYPO3 mit welchen die Grundfunktionen von TYPO3 erweitert werden können. Erst durch den Extension Manger wird es möglich Erweiterungen (Extension) nach eine einheitlichen Schema anzulegen.
Damit der Extension Manager und auch TYPO3 richtig funktioniert sind noch Einstellungen notwendig:
1.
Danach im „TYO3 Install Tool“ unter [SYS] folgende Optionen
aktivieren.
[curlUse]
= 1
[setMemoryLimit] = 64
2.
Außerdem sollten in der „php.ini“ (/etc/php5/apache2/) die
Parameter gesetzt sein:
allow_url_fpopen =
on
max_execution_time = 60
memory_limit = 64M
3. Installieren Sie
das Extension Module “php5-curl” für PHP wenn nicht schon vorhanden.

Wenn das TYPO3 Install Tool bei Ihrer TYPO3 Installation nicht verfügbar ist, so können Sie die Anpassungen auch direkt in der Datei “localconf.php” im Verzeichnis “typo3conf” vornehmen. Fügen Sie dazu folgende Zeilen ein, wenn diese nicht vorhanden sind:
|
… $TYPO3_CONF_VARS['SYS']['curlUse'] = ' 1 '; $TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = ' 64 '; … |
oder wenn notwendig muss dies auch in der Datei “.htaccess” vorgenommen werden
|
… php_value memory_limit 64M … |
Um die Performance des Online Extension-Servers zu verbessern (TER2), wurde die Suche im Repository umgestellt, man muss jetzt zuerst eine Liste mit den Extensions runterladen, damit die Suche lokal erfolgen kann.
1. Einloggen im TYPO3 Backend (BE).
2. Also unter Tools à „Ext Manager“, den Punkt "Settings" auswählen.
3. Sie können hier "Enable unsupported extensions" anhaken, wenn Sie auch nicht „security reviewed“ Extension unterstützen möchten.
4. Die Userangaben braucht man nur, wenn man einen Account bei typo3.org hat und z.B. an eigene nicht öffentliche Extensions ran will.
5. Hiernach auf
„Update“ klicken. Damit sollte die Mirror Liste geladen werden.

6. Wenn die Mirror
Liste nicht angezeigt wird, können Sie auch unauffälliger Link auf "Click
here to reload the list." - klicken.
Hinweis Wenn Sie auch ungetestete Extensions installieren wollen, können Sie unter „Settings“ auch „Enable extensions without review (basic security check):“ (oder „Erweiterungen ohne Prüfung zulassen (grundlegender Sicherheitstest):“) anwählen.
WICHTIG Beachten Sie aber, dass ungetestete Extensions zu einem unstabilen oder unsicheren System führen können.
1. Also unter Tools à Ext Manager, den Punkt "Import extensions" auswählen.
2. Klicken Sie
jetzt auf die Schaltfläche „Retrieve/Update“.

3. Klicken Sie
jetzt auf die Schaltfläche „Retrieve/Update“.

4. Danach wird das
Datum des letzten Updates angezeigt.

|
Fatal error: Maximum execution time of 15 seconds exceeded in /home/.sites/112/site415/web/t3lib/class.t3lib_db.php on line 567 |
Ursache:
In der “php.ini” ist die Zeit für “max_execution_time” auf “15” eingestellt.
Abhilfe:
Erhöhen Sie den Wert für “max_execution_time” auf mindesten “60” Sekunden
Die Extensions wie z.B. „csh_de“ werden jetzt nicht mehr unterstützt. Sollte nach einen Update auf Version 4.x noch eine vorhanden sein, kann diese deinstalliert werden. Die Sprachen werden nun in einen eigenen Ordner installiert (typo3conf/l10n), und diese werden für das Backend (BE) und das Frontend (FE) inklusive fast aller Extensions verwendet.
1. Wählen Sie aus dem Menü „Ext Manager“ aus.
2. In der Drop-Down
Auswahl wird "Translation Handling" gewählt.

3. Dort wählen wir
aus der Liste "Deutsch - [German]"
Hinweis Wenn Sie einen Mehrsprachige Website
betreiben wollen können Sie, mit Halten der <Strg> Taste und klicken auf
die jeweilige Sprache, noch alle zusätzliche Sprachen für Ihre Website
auswählen.
4. Dann "Save selection" kicken, damit diese Einstellung aktiv bleibt.
5. Klicken Sie
jetzt auf "Check status against repository".

6. Wenn die Module den Status „??“ oder „UPD“ (mit gelben Hintergrund) besitzen, sollten Sie ein Update von Online-Repository durchführen.
7. Klicken Sie dazu auf „Update from repository“.
8. Danach sollte
der Status der Module wie folgt angezeigt werden.

Das heißt dass die Module Down geladen wurden.
9. Wenn Sie „Update
from repository“ danach nochmals durchführen ändert sich er Status auf „OK“.

10. Um die Sprache des angemeldeten
Benutzers zu ändern, wählen Sie jetzt aus dem „Setup“ (in Deutsch
„Einstellungen“).

11. Wählen Sie jetzt bei
Backend-Sprache „Deutsch – [German]“.

12. Nach einem neuerlichen Login, sollten die Anzeige im Backend auf Deutsch erfolgen.
Diesen Vorgang sollte man nach Installation von Extensions oder nach bestimmten Zeitabständen wegen möglicher Updates wiederholen.
Während des Arbeitens im Backend erscheint immer wieder ein Fenster mit der Meldung „router ExtDirect: Ivalid Security Token!“

Ursache:
Abhilfe:
Wir die Mirror Liste nicht angezeigt, oder der Error unter Punkt 3.2.1.3 angezeigt wird, könnte das an falschen Firewall Einstellungen liegen.
Abhilfe:
Deaktivieren Sie kurzzeitig die Firewall und testen Sie das laden der Mirror Liste.
|
Error: The extension MD5 sum could not be fetched from extensions.md5. Possible reasons: network problems, allow_url_fopen is off, curl is not enabled in Install tool. |
Ursache:
PHP „allow_url_fopen“ nicht aktiviert oder „curlUse“ im Install Tool von TYPO3.
Abhilfe:
In der Datei „php.ini“ im Verzeichnis „/etc/php5/apache2“ die Option „allow_url_fopen = ON“ einstellen.
Habe das Problem seit 4.x.x auf dem Server ist, bei den Extension Manager Auswahlpunkten „Settings“, „Translation handling“ und „Import Extensions“.
Abhilfe:
Auf dem Server muss das Paket „php5-curl“ installiert sein und aktiviert sein.
Kontrolle der Installation:
Im TYPO3 Install Tool unter „8: phpinfo()“ Suchen Sie den Eintrag:
|
curl
|
Es wird nach der Installation von diesem Paket keine leere Seite mehr angezeigt, aber die Fehlermeldung von Punkt 10.3.2.4 kommt immer noch.
Im Apache Error log „www.domain.com-error.log“ (/var/apache2/):
|
Fatal error: Call to undefined function: curl_init() in .../t3lib/class.t3lib_div.php on line 2348 |
Abhilfe:
Entweder Sie haben „curl“ oder „php5-curl“ nicht installiert. Wenn doch siehe Punkt 10.3.2.6
|
Error: The extension MD5 sum could not be fetched from http://ter.rz.tu-clausthal.de/ter/extensions.md5.Possible reasons: Network problems, allow_url_fopen is off, cURL is not enabled in the Install Tool |
Abhilfe:
Öfnen Sie das TYPO3 Install Tool und setzen Sie die folgenden
Optionen:

Wenn dieselbe Funktion auf einem Browser direkt am TYPO3 Server ausgeführt wird funktioniert der Check (wenn es ein lokaler Server ist).
Ursache:
Bei dieser Funktion verbindet sich nicht der Client mit dem Repository, sondern der TYPO3 Server. Daher muss der TYPO3 Server eine Internetverbindung aufbauen können.
Als weitere Voraussetzung muss „allow_url_open“ aktiviert sein, dies ist auf machen Servern aus Sicherheitsgründen deaktiviert.
Abhilfe:
Wenn die Internetverbindung am Server nicht automatisch hergestellt wird, müssen Sie diese, vor Aufruf dieser Funktion, manuell herstellen.
Wenn Sie auf einen SLES11 Server arbeiten tragen Sie die Option „allow_url_open = on“ direkt in die „php.ini“ ein und starten Sie den Apache Server neu.
Alternativ kann TYPO3 so konfiguriert werden, dass der Extension Manager die Zugriffe auf das Repository über die CURL Bibliothek abwickelt. Wechseln dazu in das TYPO3 Install Tool und gehen Sie dort „All Configuration“. Hier aktivieren Sie die Option [curlUse] mit:

Fehler nach „Update from repository“ wird “UPD” oder “ERR” angezeigt.

Ursache:
Konnte nicht ermittelt werden.
Abhilfe:
Nach nochmaligen klicken auf „Update from Repository“ waren alle Zeilen welche auf „UPD oder „ERR“ standen auf „OK“.
Wählen Sie dazu zuerst aus der Navigation „ADMIN TOOLS“ - “Extension Manager“ aus der Drop-Down Liste wählen Sie „Translation Handling“ aus.

Im Auswahlfenster scrollen Sie nach unten und klicken Sie „German – [German]“ an. Danach klicken Sie auf die Schaltfläche „Save selection“. Dann „Check status against repository“ und danach auf „Update from repository“ anklicken.

Jetzt können wir aus der Navigation „User tool“ - “User
settings“ aufrufen. Dort gibt es ein Drop-Down Feld „Language“ in welchen
wir „German – [German]“ auswählen. Nur noch speichern durch klicken auf
„Save configuration“ und die gewählte Sprache sollte im Backend
angezeigt werden.

Eventuell den Browser nochmals aktualisieren damit alle Texte upgedatet werden.
Ab TYPO3 4.4.x werden keine inkludierten statischen
Templates (Include Static) mehr eingespielt oder angezeigt. Diese sind nicht zu
verwechseln mit den „Statischen Templates (aus Erweiterungen)“ oder „Include
static (from extensions)“, diese ändern sich nicht.

Es gibt jetzt eine eigene System Extension „Static Templates“, welche die Unterstützung für statische Templates zur Verfügung stellt. Die statischen Templates werden jetzt in der Tabelle „static_template“ gespeichert.
![]()
Wenn Sie statische Templates benötigen, müssen Sie diese manuell im TYPO3 Install Tool unter Datenbankanalyse mit „IMPORT“ wieder einspielen.
Damit auf einer TYPO3 Website etwas angezeigt wird muss ein sogenanntes Template erstellt werden. Das erste und oberste Template auf einer Website ist das „Root-Template“.
Wenn Sie versuchen die
Webseite vor dem Erstellen eines Templates aufrufen wird folgendes angezeigt
werden:

Das Bedeutet, dass es für die TYPO3 Installation noch Template erstellt wurde und es daher keine Seiten im Seitenbaum (Baumstruktur) gibt um diese anzuzeigen.
Hinweis Wenn Sie die Extension Template Voila (templvoila) verwenden wollen, so können Sie diese Kapitel auslassen und gleich zum Kapitel „Root Website mit der Extension „Template Voila“ gehen.
Bevor Sie dynamische Inhalte auf der TYPO3 Webseite anzeigen können, müssen Sie zuerst einen Seite (Rootseite) und ein Template (Root-Template) erstellen.
1. Einloggen
in das TYPO3 Backend.
2. Klicken
Sie dazu in der mittleren Spalte (Seitenbaum) auf die Weltkugel es sollte ein
kleine PopUp-Menü erscheinen. Aus diesen wählen Sie „Neu“ aus.

3. Klicken
Sie unter „Neue Seite erstellen“ den Text „Seite (in)“ an.

4. Das
Häkchen bei „Verbergen“ entfernen und bei „Seitentitel“ den Namen für die
Hauptseite (Rootseite) eingeben.

5. Abspeichern
der Seite mit den Diskettensymbol
oder
![]()
6. Klicken
Sie danach auf den Text „HOME“ im Seitenbaum (nicht auf das Symbol).
![]()
7. In der
Navigation klicken Sie jetzt auf „Template“. Es sollte jetzt nachfolgendes
angezeigt werden, in welchen Sie auf „Template für neue Seite erstellen“.

8. Es kommt
jetzt noch eine Sicherheitsabfrage die Sie mit „OK“ bestätigen.

9. Mit
nachfolgender Meldung ist Anlage des Root-Templates abgeschlossen.

![]()
Ursache:
Dieser Fehler kann auftreten wenn die Root Seite komplett aus dem TYPO3 Verzeichnisbaum gelöscht wurde. Es werden dann keine Datentype zur Neuanlage angezeigt.
Abhilfe:
Fehler in Datenbank. Wurde nicht verfiziert, sondern es wurde eine neue Datenbank angelegt.
1. Wählen
Sie aus der Navigation „Template“ aus.
2. Im
Seitenbaum klicken Sie auf Ihre Rootseite hier „HOME“.
3. Klicken
Sie in der rechten Spalte den Text „NEUE SEITE“ (ist das Root-Template).

4. Klicken
Sie dann auf den Bleistift vor dem Text „Konfiguration“.

Hinweis
In den weiteren Kapitel wird anstatt vom „Konfiguration“ immer vom „Setup“
gesprochen, weil sich das durch die englische Version eingebürgert hat.
Es wird immer vom „Setup Bereich“ gesprochen, wo TypoScript eingefügt werden
soll.
5. Geben Sie folgenden TypoScript Code im Setup Bereich des Templates ein, wenn er nicht schon vorhanden ist. Damit kann die grundsätzliche Funktion von TYPO3 getestet werden.
|
page = PAGE page.10 = TEXT page.10.value = HELLO WORLD |
6. Es sollte der Text „HELLO WORLD“ im Browser angezeigt werden.
Durch folgende Einstellung werden viele Ausgaben von Extension auf dem Frontend (FE)der Website auf die deutsche Sprache umgestellt.
Wenn Sie die deutsche Sprache für das Fronende als Standardsprache („Default Language“) für die Website festlegen wollen, können Sie folgendes im Setup Bereich des Root-Templates eintragen:
|
… # Standardsprachen der Seite festlegen config { sys_language_mode = strict; 0 config.sys_language_overlay = hideNonTranslated sys_language_uid = 0 language = de locale_all = de_DE htmlTag_langKey = de } [global] … # Default PAGE object: page = PAGE … |
Die „sys_language_uid“ legt die ID der Sprache fest, wobei „0“ immer die Standardsprache vom „Frontend“ ist.
Da alle neuen Seiten von TYPO3 in der „localconf.php“ auf
„utf8“ eingestellt sind können auch folgende Einstellungen richtig sein:
|
… # Standardsprachen der Seite festlegen page.config.linkVars = L page.config.sys_language_uid = 0 page.config.metaCharset = utf8 page.config.locale_all = de_DE.utf8 page.config.language = de … # Default PAGE object: page = PAGE … |
Durch Aktivierung der Extension „TYPO3 skin“ können Sie (wenn Sie wollen) das Aussehen des Backends auf moderneres Design umstellen.
![]()
Wir installieren die für die Einrichtung des Root-Templates benötigte Extension.
Eine Anleitung zur Installation von Extension gibt es im Kapitel „9 Installation von TYPO3 Extensions.
![]()
Wir erstellen zuerst die Root-Template (wenn nicht schon geschehen) mit dem Namen „Home“. unter Web à Seite.
![]()
Wir erstellen das Root-Template für die Website unter Web à Template.
Die Extension „Automake Template“ für automatische Umsetzung der dynamischen Bereiche wurde schon installiert.
Es wurde ein Root-Template mit folgendem Inhalt erstellt:
|
# Konfiguration für den „Template Auto-parser“ plugin.tx_automaketemplate_pi1 { content = FILE # Dateiname der HTML Vorlagedatei für „Template Auto-parser“ content.file = fileadmin/index.htm elements { # Erzeuge einen Subpart mit Namen ###BODY### BODY.all = 1 BODY.all.subpartMarker = DOCUMENT_BODY # Erzeuge einen Subpart mit den Namen ###HEAD### HEAD.all = 1 HEAD.all.subpartMarker = DOCUMENT_HEADER # Entfernen der Tags <titel> aus dem Dokument HEAD.rmTagSections = title # Alle gefundenen <div> Tags werden auf Subparts umgesetzt. DIV.all = 1 }
# Festlegung der relativen Pfade für den „Template Auto-parser“ relPathPrefix = fileadmin/ relPathPrefix.IMG = fileadmin/ relPathPrefix.LINK = fileadmin/templates/css/ }
# Erzeugen eines „temp“ Objektes für den Header der HTML Dokumentes temp.headTemplate = TEMPLATE temp.headTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_HEADER } # Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes # Übergabe der Inhaltselemente an die Subparts des Dokumentes temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY # Ersetze den Subpart ###logo### durch das Logo subparts.logo = IMAGE subparts.logo.file = fileadmin/templates/images/rpwlogo.gif # Ersetze den Subpart ###banner### durch das Website Banner subparts.banner = IMAGE subparts.banner.file = fileadmin/templates/images/banner1.jpg # Ersetze den Subpart ###breadCrumb### durch ein dynamisches Menü: „temp.breadcrumb“ subparts.breadCrumb < temp.breadcrumb # Ersetze den Subpart ###searchs### durch ein dynamisches Menü: „temp.macinasearch“ subparts.search < temp.macinsearch # Ersetze den Subpart ###siteLinks### durch ein dynamisches Menü: „temp.menu“ subparts.siteLinks< temp.menu # Ersetze den Subpart ###content### den Inhaltsbereich “NORMAL” subparts.content < styles.content.get # Ersetze den Subpart ###headlines### durch ein dynamisches Menü: „temp.headlines“ subparts.headlines < temp.headlines # Ersetze den Subpart ###siteInfo### durch das Objekt “temp.footermenu” subparts.siteInfo < temp.footermenu }
# Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte # des Dokumentes „temp.mainTemplate“ und „temp.headTemplate“ page = PAGE page.10 < temp.mainTemplate page.headerData.10 < temp.headTemplate |
|
|
|
|
Wenn Sie diese Website danach im Browser ansehen, werden die dynamischen Bereiche noch nicht durch dynamische Inhalte ersetzt da, diese noch nicht festgelegt wurden.
Mit der Extension „Template Voila“ wird ein neuer Weg beschritten, wie Inhalte den einzelnen Seitenelementen zugeteilt werden. Dabei erfolgt die Zuweisung (das Mapping) der Inhalte zu den Seitenelementen in einen grafischen Designer.
1. Installieren Sie
die Extension „templvoila“ vom Online Repository oder „templavoila_1.5.5.t3x“
aus einer Datei.
2. Es wird das
Ergebnis des Extension Imports angezeigt.

3. Klicken Sie
jetzt auf „Erweiterung installieren“.
4. Es wird dann
angezeigt welche Tabellen upgedatet werden.

Scrollen sie in der Seite nach unten und klicken Sie dazu auf „Aktualisierungen
durchführen“.
5. Danach kommt
noch ein Konfigurationsfenster für Kompatibilitäten mit älteren Extension
Modulen. Wählen Sie nichts und klicken Sie auf „Update“.

6. Aktualisieren
Sie jetzt den Browser, damit alle Module des Template korrekt geladen werden.
7. Im Navigator
wird danach ein neues Auswahlelement „TemplaVoilà“ angezeigt.

8. Damit bei der
Generierung der Website die Extension „TemplaVoilà“ verwendet wird muss noch
folgendes im Setup Bereich vom Root-Template eingetragen werden.
|
page = PAGE page.typeNum = 0 page.10 = USER page.10.userFunc = tx_templavoila_pi1->main_page |
1. Klicken Sie in
der Navigation auf „TemplaVoilà“
2. Im rechten
Fenster klicken Sie auf die Schaltfläche „Start wizard now!“

3. Wählen Sie die
HTML Template Datei aus die Sie verwenden möchten und klicken Sie in dieser
Zeile auf „Choose as Template“.

4. Es wird danach
das HTML Template angezeigt und Sie müssen jetzt die Felder „Name of site“,
„URL of the website“ und „Editor username“ ausfüllen. Klicken Sie danach auf
„Create new site“.

5. Nach einiger
Zeit sollte dann das Mapping Startfenster von TemplaVoilà angezeigt werden.
Klicken Sie in diesem Fenster auf „Start the mapping process“.

6. Es erscheint
jetzt das Auswahlmenü für das Mapping. Führen das Mapping der Inhaltselemente
zu den entsprechenden HTML Bereichen in ihrem Template durch.
7. Die vorgegebene Seitenstruktur können Sie je nach ihrer Anforderungen und Ihrem durchgeführten Mapping später verändern.

Ursache:
Kommt meist nach der Installation der Extension. Es wurden noch nicht alle Module korrekt in den Browser geladen.
Abhilfe:
Aktualisieren Sie jetzt den Browser, damit alle Module des Template korrekt geladen werden. Danach wird der Text „Seite“ in der Navigation wieder auf „Page“ umgedreht.

Ursache:
Template Voila geht davon aus, dass sich die HTML-Template Dateien, welchen die Inhaltselemente zugeordnet werden im Verzeichnis „fileadmin/templates“ befinden. Ist das Verzeichnis nicht vorhanden kommt diese Fehlermeldung.
Abhilfe:
Legen Sie unter dem Verzeichnis „fileadmin“ das Verzeichnis „templates“ an.

Ursache:
Es gibt zwar das Verzeichnis „fileadmin/templates“ nur haben Sie in dieses Verzeichnis keine HTML Dateien (Endung „html“ oder „htm“) abgelegt, welche als Template verwendet werden können.
Abhilfe:
Kopieren Sie Ihre HTML Template Dateien für Ihre TYPO3 Seite in das Verzeichnis „fileadmin/templates“.

Ursache:
Es wurde in der Extension TemplaVoilà noch kein gültige Mapping festgelegt.
Abhilfe:
Nehmen Sie ein gültiges Mapping für Ihre Inhaltelemente vor.
Sehen dazu näheres in der YAML Dokumentation
http://www.yaml.de/de/dokumentation.html
Download für die YAML Extension finden Sie unter
http://www.t3net.de/download.html
Je nachdem ob Sie die „template Auto-Parser“ oder das „Template Voila“ können Sie die entsprechende Extension downloaden.
Die Installation der YAML Extension () können Sie wie folgt vornehmen.
Geben Sie im Feld „Setup:“ folgendes ein, um globale Einstellungen für die Website vorzunehmen:
|
… # Umstellung auf XHTML und XHTML Cleaning config.doctype =xhtml_trans config.xhtml_cleaning = all
# Aktivierung des Admin-Panels im Frontend wenn „#“ entfernt wird #config.admPanel = 1
# Festlegung des Ziels für Links, benötigt zusätzliche Angaben unter Constants config.intTarget = {$PAGE_TARGET} config.extTarget = _blank … |
Wenn Sie unter Navigation „Template“ auf die Auswahl „Template Analysis“ wechseln, haben Sie die Möglichkeit das erstellte Template auf Fehler zu durchsuchen lassen.


Abhilfe:
Dies ist eigentlich kein Fehler, sondern es wird hiermit
angezeigt, dass sich in dieser Zeile am Ende Leerzeichen befinden. Sie können
diese beim Bearbeiten des Template entfernen.
Beim Ausführen vom Template Analysis kommt bei einem Menüobjekt folgende Fehlermeldung:

Abhilfe:
Ändern Sie das TypoSkript folgendeweise um, damit die Werte für SPC fix vergeben werden.
|
… CUR = 1 CUR.linkWrap = <li>|</li> CUR.ATagParams = class="menu_active" SPC = 1 SPC { linkWrap = <li>|</li> doNotLinkIt = 1 doNotShowLink = 1 allWrap = <br/> } }
2 < .1 2 { wrap = <ul class="menu_list2">|</ul> SPC = 1 SPC { linkWrap = <li>|</li> doNotLinkIt = 1 doNotShowLink = 1 allWrap = <br/> } … |
Seit der Version 4.4 wurde der RTE (Rich Text Editor) von Grund auf neu geschrieben. Dieser wurde nun mit Ext JS realisiert. Dieser wird mit der TYPO3 Installation schon mitinstalliert.
Als Standard Rich Text Editor unter TYPO3 4.5 wird die Extension „htmlArea RTE“ verwendet. Für die Formatierung der Texte ist die Extension „CSS styled content“ zuständig.
Ansicht der System Extension „htmlArea“ als Rich Text Editor.
![]()
Ansicht der System Extension „CSS styled content“.
![]()
Sie können viele Grundeinstellungen für den Rich Text Editor im Extension Manager vornehmen. Gehen Sie dazu in der Navigation auf „Erweiterungen“. Wählen Sie „Geladene Erweiterungen“ und suchen Sie die Zeile mit der Extension „htmlArea RTE“ und klicken Sie auf den Text.

Durch folgende Einträge im TSconfig der Root Seite „Homepage“ können Sie Grundeinstellungen für den Rich-Text-Editor vornehmen:
|
… # Anlegen von Zauberbildern ausschalten RTE.default.blindImageOptions = magic
# Ermöglicht die Eingabe von Tabellen im Rich Text Editor RTE.default.proc { dontConvBRtoParagraph = 1 preserveTable = 1 }
# Verhindert insbesondere beim Kopieren aus MS-Word die Eingabe bestimmter Elemente im Rich Text Editor RTE.default { #showButtons=copy,paste,formatblock,class,bold,italic,left,center,right,orderedlist,unorderedlist,link hideButtons=cut,fontsize,fontstyle,underline,textcolor,emoticon,outdent,indent,bgcolor,user,image,line,table } … |
Wenn Sie dem Benutzer vom RTE nicht alle Funktionen für die Bearbeitung von Texten zur Verfügung stellen wollen, können Sei einzelnen Funktionen ausblenden.
Sie können durch folgende Eintragung in das TSConfig Feld der Seite diese Funktionen im RTE ausblenden:
|
… # Funktionen (Schaltflächen) im Rich Text Editor ausblenden RTE.default { hideButtons=underline,right } # left = Text links ausrichten # center = Text zentrieren # right = Text rechts ausrichten # indent = Text einrücken # oudent = Text ausrücken # image = Bild einfügen … |
|
|
|
|
Es werden die Schaltflächen für „Unterstrichen“ und „Rechtsbündig“ ausgeblendet.
Die RTE Formatierungsleiste sieht danach wie folgt aus:

Wenn Sie im RTE nicht alle Überschriften in der Auswahl der
„Absatzart“
anzeigen
wollen können Sie das im TSConfig Feld wie folgt durchführen:
|
… # Ein- und Ausblenden von Absatzarten im Rich Text Editor RTE.default { hidePStyleItems= H1,H4,H5,H6,PRE } … |
Damit werden die Überschriften 1, 4, 5 ,6 (Tag <h1>,<h4>,<h5>, <h6>) und für die „Vorformatierten-Texte“ (Tag <pre>) aus der Absatzart-Auswahl ausgeblendet.
WICHTIG Nach dem Update auf die Version 4.5 hatte einige Probleme mit Formatierungen wie z.B. „Zentrierung“, „Blocksatz“, etc., dann hab ich in den Einstellungen der Extension „rtehtmlarea“ den Haken bei "Enable compressed scripts [enableCompressedScripts]" rausgenommen.
Dann habe ich noch mein CSS Stylesheet um folgende Einträge
ergänzt:
|
… /* Eingebaut nach Update auf 4.5 */ .align-left { text-align: left } .align-center { text-align: center } .align-right { text-align: right } … |
Damit die Schriftarten im RTE gleich wie die Schriften der Standard-Formatierung für die Homepage (in der CSS-Datei) aussehen könne Sie die folgendes durchführen.
Übernehmen Sie die Formatierung aus der CSS Datei für diese Standard-Formatierungen und definieren Sie diese in der TSConfig der Homepage Rootseite für die komplette Homepage.
Geben Sie dazu folgende Einträge in das TSConfig Feld der Seite ein:
|
… # Festlegung der Darstellung für Standard-Schriften im Rich Text Editor RTE.default { mainStyleOverride_add.P = font-size:11px;line-height:11px;margin-bottom:0px; mainStyleOverride_add.H1 = font-size:16px;margin-top:15px;margin-bottom:10px;color:#606060; mainStyleOverride_add.H2 = font-size:14px;margin-top:10px;margin-bottom:6px;color:#606060; mainStyleOverride_add.H3 = font-size:12px;margin-top:5px;margin-bottom:0px;color:#606060; mainStyleOverride_add.UL = font-size:11px;line-height:11px;margin:0px 10px 0px; mainStyleOverride_add.OL = font-size:11px; } … |
Sie können die Standardüberschriften <h1> bis <h6> deaktivieren und eigene Überschriften für den RTE definieren. Durch die gleiche Definition einer Schrift, im TSconfig sowie in der CSS Datei, kann die Schrift für den RTE und auch für den Frontend gleich aussehend gestaltet werden.
Durch folgenden Eintrag in das TSConfig Feld der Seite können Sie dies festlegen:
|
… # Ein- und Ausblenden von Absatzarten im Rich Text Editor RTE.default { classesParagraph = ueberschrift,ueberschrift2 }
# Konfiguration zusätzlicher Absatzarten im Rich Text Editor. Die Formatierung muss in der CSS-Datei hinterlegt werden! RTE.classes { ueberschrift { name = Überschrift value = font-size:15px;color:#666666;font-weight:900;letter-spacing:0.03em; } ueberschrift2 { name = Überschrift2 value = font-size:13px;color:#666666;font-weight:700;letter-spacing:0.03em; } } … |
Hier wird eine umfassende Konfiguration des Rich Text Editor durchgeführt.
Die Konfiguration im TSConfig Feld der Rootseite (oder beim Benutzer-/Benutzergruppe) die z.B. so aussehen könnte:
|
… #*** RTE Classe des Interface (Ausrichtung) RTE.classes { align-left { name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyleft value = text-align: left; } align-center { name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifycenter value = text-align: center; } align-right { name = LLL:EXT:rtehtmlarea/htmlarea/locallang_tooltips.xml:justifyright value = text-align: right; } }
# # *** Entfernt das Bild vor den Links RTE.classesAnchor { internalLink { class = internal-link type = page image > } externalLink { class = external-link type = url image > } externalLinkInNewWindow { class = external-link-new-window type = url image > } internalLinkInNewWindow { class = internal-link-new-window type = page image > } download { class = download type = file image > } mail { class = mail type = mail image > } }
## RTE Konfiguration RTE.default {
# Zuweisung der CSS-Datei #contentCSS = rte_formate.css contentCSS = fileadmin/templates/css/rte_format.css
## Markup options enableWordClean = 1 removeTrailingBR = 1 removeComments = 1 removeTags = center, sdfield removeTagsAndContents = style,script
# Buttons die gezeigt/versteckt werden showButtons = textstyle, textstylelabel, blockstyle, blockstylelabel, bold, italic, underline, left, center, right, orderedlist, unorderedlist, insertcharacter, line, link, image, removeformat, toggleborders, tableproperties, rowproperties, rowinsertabove, rowinsertunder, rowdelete, rowsplit, columninsertbefore, columninsertafter, columndelete, columnsplit, cellproperties, cellinsertbefore, cellinsertafter, celldelete, cellsplit, cellmerge, findreplace, insertcharacter, undo, redo, showhelp, about, chMode, inserttag hideButtons = fontstyle, formatblock, fontsize, strikethrough,lefttoright, righttoleft, textcolor, bgcolor, textindicator, emoticon, user, spellcheck, outdent, indent, justifyfull, subscript, superscript, table, acronym, copy, cut, paste
# Hält die RTE Icons gegroupt zusammen keepButtonGroupTogether = 1
# blendet Statusbar in htmlarea aus showStatusBar = 0
## Add styles Left, center and right alignment of text in paragraphs and cells. inlineStyle.text-alignment ( p.align-left, h1.align-left, h2.align-left, h3.align-left, h4.align-left, h5.align-left, h6.align-left, td.align-left { text-align: left; } p.align-center, h1.align-center, h2.align-center, h3.align-center, h4.align-center, h5.align-center, h6.align-center, td.align-center { text-align: center; } p.align-right, h1.align-right, h2.align-right, h3.align-right, h4.align-right, h5.align-right, h6.align-right, td.align-right { text-align: right; } )
## Use stylesheet file rather than the above mainStyleOverride and inlineStyle properties to style the contents (htmlArea RTE only) ignoreMainStyleOverride = 1
proc { # tags die erlaubt / verboten sind allowTags = table, tbody, tr, th, td, h1, h2, h3, h4, h5, h6, div, p, br, span, ul, ol, li, re, blockquote, strong, em, b, i, u, sub, sup, strike, a, img, nobr, hr, tt, q, cite, abbr, acronym, center denyTags = font
# br wird nicht zu p konvertiert dontConvBRtoParagraph = 1
# tags sind erlaubt außerhalt von p, div allowTagsOutside = img,hr
# erlaubte attribute in p, div tags keepPDIVattribs = align,class,style,id
# List all class selectors that are allowed on the way to the database allowedClasses ( external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail, align-left, align-center, align-right, author )
# html parser einstellungen HTMLparser_rte {
# tags die erlaubt/verboten sind allowTags < RTE.default.proc.allowTags denyTags < RTE.default.proc.denyTags
# tags die untersagt sind removeTags = font
# entfernt html-kommentare removeComments = 1
# tags die nicht übereinstimmen werden nicht entfernt (protect / 1 / 0) keepNonMatchedTags = 0 }
# Content to database entryHTMLparser_db = 1 entryHTMLparser_db {
# tags die erlaubt/verboten sind allowTags < RTE.default.proc.allowTags denyTags < RTE.default.proc.denyTags
# CLEAN TAGS noAttrib = b, i, u, strike, sub, sup, strong, em, quote, blockquote, cite, tt, br, center
rmTagIfNoAttrib = span,div,font
# htmlSpecialChars = 1
## align attribute werden erlaubt .tags { p.fixAttrib.align.unset > p.allowedAttribs = class,style,align
div.fixAttrib.align.unset >
hr.allowedAttribs = class
# b und i tags werden ersetzt (em / strong) b.remap = strong i.remap = em
## img tags werden erlaubt img > } }
}
# Classes: Ausrichtung classesParagraph ( align-left, align-center, align-right )
# Classes: Eigene Stile classesCharacter = author classesImage= rte_image
# Classes für Links (These classes should also be in the list of allowedClasses) classesAnchor = external-link, external-link-new-window, internal-link, internal-link-new-window, download, mail classesAnchor.default { page = internal-link url = external-link-new-window file = download mail = mail }
# zeigt alle CSS-Klassen die in formate.css vorhanden sind showTagFreeClasses = 1
# Do not allow insertion of the following tags hideTags = font
# Tabellen Optionen in der RTE Toolbar hideTableOperationsInToolbar = 0 keepToggleBordersInToolbar = 1
# Tabellen Editierungs-Optionen (cellspacing/ cellpadding / border) disableSpacingFieldsetInTableOperations = 1 disableAlignmentFieldsetInTableOperations=1 disableColorFieldsetInTableOperations=1 disableLayoutFieldsetInTableOperations=1 disableBordersFieldsetInTableOperations=0 }
# Use same processing as on entry to database to clean content pasted into the editor RTE.default.enableWordClean.HTMLparser < RTE.default.proc.entryHTMLparser_db
# FE RTE configuration (htmlArea RTE only) RTE.default.FE < RTE.default RTE.default.FE.userElements > RTE.default.FE.userLinks >
# Breite des RTE in Fullscreen-Ansicht TCEFORM.tt_content.bodytext.RTEfullScreenWidth= 80% … |

Ursache:
Abhilfe:
Als Konzept für die Mehrsprachigkeit wird hier das sogenannte “Ein Baum für alle Sprachen” (oder “One-Page-Tree”) verwendet im Gegensatz zum „Two-Tree“ Konzept das hier nicht weiter behandelt wird. Dies bedeutet es gibt nur einen Seitenbaum in welchen alle Sprachen hinterlegt werden. Der Zugriff auf eine Seite in einer anderen Sprache erfolgt mit der gleichen Seiten-ID aber mit einem zusätzlichen Parameter im Aufruf-URL (z.B. „L=1“). Bei RealURL wird der URL um den Ländercode ergänzt z.B. „http://www.company.com/en/...“ Wird der zusätzliche Parameter nicht angegeben erfolgt die Anzeige in der Standardsprache.
Zusammenfassung:
· Es gibt nur einen Seitenbaum
· Es gibt eine primäre Sprache (ID 0) in der alle Seiten zuerst erstellt werden müssen
· Danach kann jede Seite im Seitenbaum in eine andere vordefinierte Sprache (ID 1,2 etc.) übersetzt werden.
· Wird keine eigene Seite in der benötigten Sprache gefunden, so wird die Seite in der Standardsprache angezeigt.
Die Sprache mit der sie die ersten Seiten primär Anlegen ist die Standardsprache mit der ID „0“.
1. Damit die Mehrsprachigkeit unter TYPO3 ohne Probleme unterstütz wir müssen Sie zuerst sicherstellen das die MySQL Datenbank den Characterset „utf8“ verwendet.
2. Bearbeiten Sie dann die Datei „localconf.php“ aus dem Verzeichnis „typo3conf“ und fügen Sie folgende Zeile ein:
|
… $TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8'; … |
3. Im Setup Bereich des TYPO3 Root Template wird folgendes eingefügt:
|
… # Umstellung vom Character Set auf UTF8 config.metaCharset = utf-8 config.additionalHeaders = Content-Type:text/html;charset=utf-8 … |
1. Wählen Sie aus
dem Menü „Ext Manager“ aus.
2. In der Drop-Down
Auswahl wird "Translation Handling" gewählt.

3. Dort Sie zuerst
auf die Sprache aus der Liste "Deutsch - [German]" und danach,
mit Halten der <Strg> Taste noch „Spanisch – [Spanish]“. Damit
haben Sie zwei Sprachen ausgewählt.
4. Dann "Save
selection" kicken, damit diese Einstellung aktiv bleibt.
5. Klicken Sie jetzt
auf "Check status against repository".
6. Jetzt klicken
Sie auf „Update from Repository“. Sie sollten ca. eine Ansicht wie die
Nachfolgende Abbildung sehen.

7. Der Download
aller Dateien erfolgt in das Verzeichnis „typo3config/i10n/“. Wobei
unterhalb für jedes Sprachkürzel ein Verzeichnis angelegt wird.
Unterhalb von den jeweiligen Sprachkürzel werden die Extension Verzeichnisse
angelegt, in welche die Sprachdateien abgelegt werden.
Hinweis Wenn Sie die nachfolgende Einrichtung für die
Mehrsprachigkeit fertig gestellt haben, sollten Sie die Webseite ohne manuelle
Bearbeitung der Sprachdatei in der jeweiligen Sprache angezeigt bekommen.
Zur Unterstützung der in TYPO3 eingebauten Mehrsprachigkeit nach dem „One-Page-Tree“ Konzept müssen Sie folgende Vorbereitungen durchführen.
1. Klicken im Root
Objekt (Weltkugel) auf „Neu“
![]()
2. Wählen Sie aus
den Objekten „Web-Site-Sprache“ aus.

3. Geben als Namen für
die Sprache „English“ ein und wählen Sie eine Flagge aus.

Speichern Sie das Objekt ab.
4. Mit „Web“-
„Liste“ und Auswahl des Root Objektes muss jetzt folgendes angezeigt werden.

5. Wenn Sie mit der Maus über das Symbol der „Weltkugel in der Hand“ gehen muss die ID der Sprache hier „1“ angezeigt werden. Die primäre Sprache (Standardsprache) also besitzt immer die ID „0“.
Sie können jetzt Seiten in der primären oder in der neu angelegten Sprache anlegen. Gehen Sie dazu wie folgt vor:
1. Wählen „Web“-
„Seite“ aus der Navigation
![]()
2. Wählen Sie das
gewünschte Baumobjekt das Sie in eine andere Sprache übersetzen wollen aus.
![]()
3. Auf der rechten
Seiten beim Seiteninhaltsfenster jetzt auf „Sprachen“ wechseln und die
gewünschte Sprache auswählen.

4. Sie können jetzt
den Seitentitel in der neuen Sprache eingeben.

5. Inhaltselemente für die neue Sprache anlegen.
Hinweis Mit den Setup Optionen „sys_language_mode“ und „sys_language_overlay“ können Sie steuern was passieren soll, wenn die Seite oder ein Inhaltselement nicht in die ausgewählte Sprache übersetzt wurde. Standardmäßig wird dann immer der Inhalt aus der „Default“ Sprache angezeigt.
1. Die IDs für die
Sprache können Sie unter „Web“-„Liste“ auf dem Root Objekt (Weltkugel) ermitteln.
Stellen Sie die Maus auf das Sprachsymbol damit die ID angezeigt wird.

2. Im Setup Bereich
von Root-Template wird folgendes eintragen unter Berücksichtigung der vorher
ermittelten Sprach-ID von „1“ für „Englisch“ und „2“ für Spanisch. Außerdem
wird unter dem „PAGE“ Objekt „linkVard“ für die Sprachumschaltung festgelegt.
|
… #
English language, sys_language.uid = 1 #
Espanol language, , sys_language.uid = 2 |
Hinweis Achten Sie beim Einfügen der Sprachdefinition an die genaue Position vor dem „PAGE“ Objekt und vor dem „temp.mainTemplate“ welches die Subpart Inhalte übergibt.
Sie können für die Sprachumschaltung ein spezielles Menü verwenden.
|
… temp.langmenu = HMENU temp.langmenu { special = language special.value = 0,1 1 = TMENU 1.NO = 1 } … |
Das Menü muss jetzt noch an einen Subpart übergeben werden:
|
… # Erzeugen eines "temp" Objektes für den BODY des HTML Dokumentes # Übergabe der Inhaltselemente an die Subparts des Dokumentes temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY ... # Ersetze den Subpart ###language### durch das Sprachmenü „temp.langmenu“ subparts.lang_switch < temp.langmenu ... }
# SprachVariable L initialisieren page.config.linkVars = L … # Inhalte der temp Ojkete an das "page" Objekt übergeben page.10 < temp.mainTemplate page.headerData.10 < temp.headTemplate |
Um die Sprachumschaltung in die vorhandene Website einzubauen benötigen wir TYPO3 Skript und ein PHP Script das in die Seite inkludiert wird.
3. Die Sprachauswahl als Menü im Setup Bereich vom Root-Template anlegen.
|
… ############ Menü für Sprachumschaltung ################## temp.langmenu = COA temp.langmenu { 10 = HMENU 10 { # deutsch und englisch special = language special.value = 0,1,3
1 = GMENU 1 { noBlur = 1 NO = 1 NO { XY = [10.w]+4,[10.h]+4 backColor = white 10 = IMAGE 10.file = EXT:cms/tslib/media/flags/flag_de.gif || EXT:cms/tslib/media/flags/flag_uk.gif || EXT:cms/tslib/media/flags/flag_es.gif 10.offset = 2,2 } ACT < .NO ACT { 10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif noLink = 1 #backColor = #ff0000 } USERDEF1 < .NO USERDEF1 { 10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif } USERDEF2 < .ACT } } } |
Die Sprachumschaltung wird hier
mit Flaggen angezeigt. Wobei immer die aktive Sprache im Menü deaktiviert wird.
Die „special.value“ des Menüs „0,1,3“ müssen Sie Ihren IDs der angelegten
Sprachen anpassen.
4. Das Menü muss jetzt noch an einen Subpart übergeben werden:
|
… # Erzeugen eines "temp" Objektes für den BODY des HTML Dokumentes # Übergabe der Inhaltselemente an die Subparts des Dokumentes temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY ... # Ersetze den Subpart ###language### durch das Sprachmenü „temp.langmenu“ subparts.lang_switch < temp.langmenu ... }
# SprachVariable L initialisieren page.config.linkVars = L … # Inhalte der temp Ojkete an das "page" Objekt übergeben page.10 < temp.mainTemplate page.headerData.10 < temp.headTemplate |
Sie können die Sprachumschaltung auch mit der Extension „sr_language_menu“ in Ihre Website einbauen. Diese Art der Sprachumschaltung benötigen Sie auch wenn Sie die Extension „templvoila“ verwenden. Gehen Sie dazu wie folgt vor.
1. Installieren der
Extension „static_info_tables“ durchführen (Voraussetzung).
2. Installieren Sie
die Extension „sr_language_menu“.
3. Geben Sie folgendes TYPO3 Skript im Setup Bereich vom TYPO3 Root Template ein um die Sprachauswahl als Liste anzuzeigen.
|
… plugin.tx_srlanguagemenu_pi1 { defaultLanguageISOCode = DE # Legt die Anzeige der Sprachauswahl fest (2: Liste, 1: Auswahlliste, 0:Flagge) defaultLayout
= 2 showInactive = 1 useIsoLanguageCountryCode = 1 # Anzeige der Links festlegen link.INACT.doNotLinkIt = 1 link.CUR.doNotLinkIt = 1 link.NO.stdWrap.wrap = <span class="NO">|</span> link.CUR.stdWrap.wrap = <span class="CUR">|</span> links.stdWrap.split { token = { $plugin.tx_srlanguagemenu_pi1.token } wrap = | <span class="SPC"> | </span> |*| | <span class="SPC"> | </span> |*| | } } … |
4. Jetzt müssen Sie
noch den Inhalt des Plugins an der gewünschten Stelle im Setup Bereich des Root
Templates übergeben.
|
… templ.lang_menu < plugin.tx_srlanguagemenu_pi1 … temp.mainTemplate = TEMPLATE temp.mainTemplate { … # Ersetze den Subpart ###lang_switch### durch das Sprachmenü subparts.lang_switch < temp.lang_menu … } … |
Mit der Extension „rlmp_language_detection“ können Sie eine automatische Spracherkennung einbauen. Die Website wird dann immer auf die erkannte Sprache des Browser automatisch umgestellt. D.H. ein auf Englisch eingestellter Browser erhält sofort die englische Seite angezeigt.
Ursache:
Nach Übersiedlung der Website wird die Sprachumschaltung nicht mehr angezeigt. Auf der alten Website hat die Sprachumschaltung aber noch funktioniert.
Anstatt der Flaggen
wir nichts angezeigt.
Abhilfe:
Öffnen Sie das TYPO3 Install Tool und kontrollieren Sie unter „All Configuration“ ob die Option „image_processing“ aktiviert ist.

Sollte dies nicht helfen, kontrollieren Sie die Grafikfunktionen vom System wie unter Kapitel „8.4 TYPO Grafiktest durchführen“ erklärt.
Nach Umstellung der in der Datei „localconf.php“ im Verzeichnis „typo3conf“ auf:
“$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8';”
kommt folgende Fehlermeldung beim Öffnen vom Backend (BE) mit “Forced charset not found: The forced character set "utf8" was not found in t3lib/csconvtbl/”.
Das Frontend (FE) der Website kann ohne Probleme geöffnet werden.

Abhilfe:
Der richtige Eintrag in die Datei „locallang.php“ muss
„utf-8“ lauten.
“$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';”
Es erscheint die Fehlermeldung „The page is not configured! [type= 0][]“

Ursache:
Im Setup Bereich vom TYPO3 Root Template wurde folgende Sprachdefinition nach dem „PAGE“ Objekt eingefügt. Außerdem wird das „temp.mainTemplate“ schon vor dem „PAGE“ Objekt definiert. Die Sprachdefinition muss aber schon vor dem Objekt „temp.mainTemplate“ festgelegt werden.
|
… temp.mainTemplate = TEMPLATE temp.mainTemplate { … page = PAGE … # SprachVariable L initialisieren page.config.linkVars = L
#config.sys_language_mode = content_fallback; 1,0 [globalVar = GP:L = 0] config { sys_language_mode = strict; 0 sys_language_mode = content_fallback; 0 #config.sys_language_overlay = hideNonTranslated sys_language_uid = 0 language = de locale_all = de_DE htmlTag_langKey = de } [global] … # Inhalte der temp Ojkete an das "page" Objekt übergeben page.10 < temp.mainTemplate page.headerData.10 < temp.headTemplate … |
Abhilfe:
Verschieben Sie die Sprachdefinitionen vor das „temp.mainTemplate“ und auch vor das „PAGE“ Objekt dann sollte der Fehler wieder verschwinden.
|
… #config.sys_language_mode = content_fallback; 1,0 [globalVar = GP:L = 0] config { sys_language_mode = strict; 0 sys_language_mode = content_fallback; 0 #config.sys_language_overlay = hideNonTranslated sys_language_uid = 0 language = de locale_all = de_DE htmlTag_langKey = de } [global] … temp.mainTemplate = TEMPLATE temp.mainTemplate { … … page = PAGE … # SprachVariable L initialisieren page.config.linkVars = L … |
Im Firefox werden folgende Zeichen angezeigt:
Im Internet Explorer sieht es so aus:
![]()
Abhilfe:
Sie können Ihre Seiten mit der Extension „convert2utf8“ in „utf8“ konvertieren. Dies sollten Sie durchführen bevor Sie in der Datei „localconf.php“ den Eintrag „$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8';“ vornehmen.
Installieren Sie die Extension „convert2utf8“ und konvertieren Sie alle Ihre Seiten in den „utf8“ Zeichensatz.

Im Seitenbaum mit der linken Maustaste auf das Seitensymbol
der Rootseite klicken und "Convert to utf-8" auswählen. Dann alle
Seiten die umgewandelt werden sollen selektieren und den Anweisungen folgen.


Wählen Sie den Characterset der alten Seite aus und klicken Sei dann auf „Convert page(s)“.

Jetzt können Sie die TYPO3 Konfiguration auf „utf-8“ umstellen.
|
Fatal error: Call to undefined method t3lib_div::fixed_lgd_pre() in /srv/www/htdocs/rpw2/typo3conf/ext/convert2utf8/cm1/index.php on line 91 |
Behebung:
Im Moment sieht eine Links nach einer Sprachauswahl so aus:
http://www.realpowerwork.com/index.php?id=12
Richtigerweise sollte er aber nach der Sprachumschaltung so aussehen:
http://www.realpowerwork.com/index.php?id=12&L=1
Abhilfe:
Kontrollieren Sie ob Sie im TYPO3 Root Template die Sprachvariable „L“ initialisiert haben.
|
… config { |
Nachdem die Sprache umgestellt wurde wird die Sprachvariable nicht gesetzt es wird immer nur “&L=” ohne eine Sprachnummer angehängt.
Ursache:
Dieser Fehler tritt ab TYPO3 4.6 auf wenn im TypoScript für die Definition der Variable noch “GPvar:L” verwendet wird. Den “GPvar” gibt es bei der TYPO3 4.6 Version nicht mehr,da er schon als “deprecated” angekündigt wurde.
Abhilfe:
Ändern Sie alle Variablen Definitionen für die Sprachvariable von “GPvar:L” auf “GP:L” um.
Ein Beispiel:
|
… # holt aktuellen Sprachcode 30 = TEXT 30.data = GP:L … |
Beispiele falsche Text Anzeigen:
|
Ahora está … electrónico: Repite el código |
Ursache:
Nicht Latin Sonderzeichen werden nur dann richtig dargestellt wenn der Zeichensatz für TYPO3 auf „utf8“ umgestellt wird.
Abhilfe:
In der Datei „locallang.php“ im Verzeichnis „typo3conf“ folgendes eintragen.
|
… $TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf8'; … |
Wenn im BE unter „Templates“ die „Template Analysis“ vom Root Template durchgeführt wird, erscheint der Fehler „ERROR: …: Objekt Name String „[globalVar“ contains invalid character „[„. Must be alphanumeric or one of: „_-„

oder in Admin Panel mit TS-Rendering:
|
…
… |
Dieser Fehler wird angezeigt wenn im Root Template mit
“config.admPanel = 1” das Admin Panel aktiviert wird und danach in diesem
„Nachrichten anzeigen“ und „TS-Rendering erzwingen“ ausgewählt wird.

Ursache:
Noch wurde noch nicht herausgefunden. Doch diese Fehlermeldung beeinflusst die Funktion der Website nicht. Die Sprachumschaltung funktioniert einwandfrei.
Abhilfe:
Keine notwendig, Fehler einfach ignorieren.

Abhilfe:
Es gibt keine sogenannte „locale“ mit dem Namen „en_UK“
sondern nur mit „en_GB“ oder „en_US“, etc.
Sie können sich unter Linux mit „locale –a“ alle vorhanden anzeigen lassen.
Richtig ist hier folgender Eintrag in der Sprachumschaltung:
|
… [globalVar = GP:L=1] config { sys_language_uid = 1 language = en locale_all = en_GB.utf-8 htmlTag_langKey = en } … [global] … |
Das „.utf-8“ können Sie je nach verwendetem Zeichensatz auch weglassen.
TYPO3 setzt beim Rendering der Seite für die Seiten und Inhaltselemente bestimmte Formatierungen die standardmäßig vorgegeben sind. Oft sind aber diese Formatierungen nicht erwünscht oder zerstören das korrekte Design der Seite. Nachfolgend finden Sie eine Liste von Einträgen die Sie in den Setup Bereich des Templates vornehmen können um solche Formatierungen zu entfernen.
|
… # Entfernt alle CLEAR.GIF aus dem HTML Code tt_content.image.20.spaceBelowAbove = 0 tt_content.header.stdWrap.space = 0|0 tt_content.stdWrap.space = 0|0 tt_content.stdWrap.spaceBefore = 0 tt_content.stdWrap.spaceAfter = 0 lib.stdheader.stdWrap.space = 0|0
# Entfernt CLEAR.GIF hinter den Überschriften tt_content.text.20.parseFunc.tags.typohead.stdWrap.space = 0|0
# Folgender Code löscht das <p style='margin:0 0 0 0 '> Tag tt_content.text.20.parseFunc.nonTypoTagStdWrap.encapsLines.addAttributes { P.style= }
# Anker vor Content entfernen tt_content.stdWrap.dataWrap = tt_content.noANameTagForFirstRecord = 1 … |
Einstellungen die Sie in der CSS Datei für standardmäßige Formatierungen vornehmen können:
|
… # Abstände bei <p> Tags definieren p { margin: 0; padding: 0; }
# Den normalen Text von Inhaltselementen formatieren .bodytext { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; margin: 0; text-align: left; }
# Beim Inhaltselement Bild das Bild zentrieren .imgtext-table { margin: 0 auto; } … |
Die Verzeichnis und Dateien für TYPO3 werden unter „fileadmin“ angelegt. Dies ist das einzige Verzeichnis auf das man direkt aus dem Backend oder Frontend zugreifen kann.
Hinweis Damit eine klare Trennung zwischen Design und Inhalt in der Verzeichnisstruktur besteht, wurden alle für das Design zuständigen Dateien oder Verzeichnisse unter das Verzeichnis „fileadmin/templates/“ und die darin enthaltenen Unterverzeichnisse verschoben.
Baumansicht
vom TYPO3 Backend Modul
Welche Dateien in die jeweiligen Verzeichnisse abgelegt werden, wird in dem nachfolgenden Kapitel beschrieben.
Damit Menüs erstellt werden können müssen schon Seiten im TYPO3 vorhanden sein.
Die Seitenstruktur im Backend wurde, so wie angezeigt angelegt.

Das Menü sollte lt. Vorlage vom HTML Template so aussehen:

Dieser Menü Typ sollte vorrangig zur Erstellung von Menüs verwendet werden. Dabei gibt es hier wieder die Unterscheidung zwischen einer Ankerliste (mit Zeilenvorschub), einer Liste mit <ul> und <li> Tags oder einer Tabelle. Tabellen sollten wenn Barrierefreiheit erwünscht ist vermieden werden. Zu bevorzugen ist eine Formatierung als Liste mit <ul> und <li> Tags.
Einträge im Template Setup Bereich:
|
… # Erstellt das Hauptmenü temp.menu = HMENU temp.menu { 1 = TMENU 1 { expAll = 1 noBlur = 1 wrap = <ul class="menu_list1">|</ul> NO { allWrap = <li>|</li> ATagParams = class="menu_link_NO" } RO < .NO RO.ATagParams = class="menu_link_RO" CUR < .NO CUR.ATagParams = class="menu_link_CUR" }
2 < .1 2 { wrap = <ul class="menu_list2">|</ul> NO { ATagParams = class="menu_link_NO" } RO < .NO RO.ATagParams = class="menu_link_RO" CUR < .NO CUR.ATagParams = class="menu_link_CUR" } } … |
|
… /*********** #navBar link styles ***********/
#navBar ul a:link, #navBar ul a:visited { display: block; color: #101033; background-color: #bfbbd0; }
#navBar ul.menu_list1 a:hover, #navBar ul.menu_list2 a:hover { text-decoration: none; color: #666666; background-color: #dddddd; } #navBar ul li ul a:active, #navBar ul li a:active { text-decoration: none; color: #666666; background-color: #dddddd; }
#navBar ul.menu_list1 {list-style: none; margin: 0; padding: 0; font-weight: 700;} #navBar ul.menu_list2 {list-style: none; margin: 0 10px; padding: 0; font-weight: 300;}
/* hack to fix IE/Win's broken rendering of block-level anchors in lists */ #navBar li { border: solid 1px #BFBBD0; }
/* fix for browsers that don't need the hack */ html>body #navBar li {border-bottom: none;}
/*********** #siteLinks styles ***********/
#siteLinks{ margin: 0px; padding: 0px 10px; /* Für die Zentrierung von Hover und Active Farbalken */ font-size: 90%; text-decoration: none; }
#siteLinks a { display: block; padding: 0px; padding-top: 2px; /* Für den Abstand der Menüzeilen */ text-decoration: none; } … |
Der Einsatz eines grafischen Menüs ist, unter Berücksichtigung auf Barrierefreiheit, zu vermeiden. Wenn Sie dennoch grafische Menüs verwenden wollen, so müssten Sie die Barrierefreiheit mit eigenen Extensions nachrüsten z.B. „css_styles_imgtext“ oder „sl_css_imgtext“.
Voraussetzung zur Erstellung des unten angeführten Menüs ist die Schriftart „arial.ttf“ diese muss in das Verzeichnis „fileadmin/templates/fonts“ kopiert werden.
Einträge im Template Setup Bereich:
|
… template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_HEADER } …
temp.menu = HMENU temp.menu { 1 = GMENU 1 { expAll = 1 noBlur = 1 NO { noLink = 1 wrap = <br>| XY = 165,13 backColor = #bfbbd0 10 = TEXT 10.text.field = title 10.offset = 10,12 10.fontFile = fileadmin/templates/fonts/arial.ttf 10.fontSize = 12 10.fontColor = #101033 10.align = left }
RO < .NO RO.backColor = #dddddd RO.10.fontColor = #666666 RO = 1 CUR < .NO CUR.noLink = 1 CUR.backColor = #dddddd CUR.10.fontColor = #666666 CUR = 1 }
2 = GMENU 2 { noBlur = 1 NO { wrap = | XY = 165,13 backColor = #bfbbd0 10 = TEXT 10.text.field = title 10.offset = 18,12 10.fontFile = fileadmin/templates/fonts/arial.ttf 10.fontSize = 12 10.fontColor = #555588 10.align = left } RO < .NO RO = 1 RO.backColor = #dddddd RO.10.fontColor = #666666 CUR < .NO CUR = 1 CUR.backColor = #dddddd CUR.10.fontColor = #666666 }
}
… # Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes # Übergabe der Inhaltselemente an die Subparts des Dokumentes temp.mainTemplate = TEMPLATE… |
Verwendete CSS Formatierung:
|
… #navBar{ float: left; width: 169px; background-color: #BFBBD0; /* border-right: 1px solid #cccccc; border-bottom: 1px solid #cccccc; */ padding: 0px; padding-bottom: 15px; margin-left: 2px; } …. /*********** #siteLinks styles ***********/
#siteLinks{ margin: 0px; padding: 0px 2px; /* Für die Zentrierung von Hover unn Active Farbbalken */ font-size: 90%; text-decoration: none; }
#siteLinks a { display: block; padding: 0px; padding-top: 2px; /* Für den Abstand der Menüzeilen */ text-decoration: none; } … |
Die Einrichtung eines Klickpfad oder auch Breadcrumb Menü
erfolgt wieder mit einer eigenen Menüdefinition im Setup Bereich:
|
… template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_HEADER }
temp.breadcrumb = HMENU temp.breadcrumb.special = rootline temp.breadcrumb.special.value = 1 temp.breadcrumb.1 = TMENU temp.breadcrumb.1.noBlur = 1 temp.breadcrumb.1.NO { linkWrap = | <font style="color:#666666;">></font> |*| ATagParams = style="text-decoration:none;" } temp.breadcrumb.1.CUR = 1 temp.breadcrumb.1.CUR { linkWrap = <font style="color:#666666;">|</font> doNotLinkIt = 1 }
temp.menu = HMENU temp.menu { 1 = GMENU … |
Verwendete CSS Formatierung:
|
… /************* #breadCrumb styles *************/
#breadCrumb{ font-size: 60%; padding: 2px 0px 2px 10px; text-decoration: none; } … |
Für die Einrichtung des Bottom Menü wird nur die zweite Ebene aus dem zweistufigen Menü verwendet. Ausgehend von der angeführten Site wird ein Menü aus allen vorhandenen Unterseiten erstellt. Es wird zuerst auf der 1. Ebene eine Seite angelegt die auf „Nicht im Menü“ gesetzt wird. Darunter legen Sie auf der 2. Ebene Ihre Seiten an, die im Bottom Menü angezeigt werden. Als „Typ“ für diese Seiten verwenden Sie „Standard“ oder „Erweitert“.
Im Backend wurde folgende Seitenstruktur angelegt:

Im Template Setup Bereich sollten folgendes stehen:
|
… CUR.backColor = #dddddd CUR.10.fontColor = #666666 }
}
temp.footermenu = HMENU temp.footermenu.special = directory temp.footermenu.special.value = 2 temp.footermenu.1 = TMENU temp.footermenu.1.noBlur = 1 temp.footermenu.1.NO { linkWrap = | | |*||*|| ©2011 Real Power Work ATagParams = style="text-decoration:none;" }
… temp.mainTemplate = TEMPLATE temp.mainTemplate { … |
Im Block für die Menüerstellung wird das „Spezial“ Attribute auf die Page IDs 22 und 26 zugewiesen.
Im unteren Teil des Beispiels wurde die Zuweisung zum TEMP Objekt „mainTemplate“ erweitert.
Es soll ein sogenanntes Sitemap Menü aus drei Ebene als Listenmenü (mit <ul> und <li>) erstellt werden. Die einzelnen Auswahlpunkte des Menüs werden als normale Textlinks angezeigt.
Zur Vorbereitung wir auf der Seite für die Sitemap als Inhaltstyp
„Menü/Sitemap“ gewählt und als „Menü Typ:“ nochmals „Sitemap“ aus. Als
Ausgangspunkt wird die Rootseite der Website gewählt:

Das Menü das normalerweise mit dieser Einstellung erstellt wird, kann jetzt durch TypoScript im Setup Bereich mit eigenen Menüanweisungen und Anpassungen überschrieben werden.
Der Vorteil ist dabei, Sie können das Standard Inhaltsobjekt für Sitemap weiterhin verwenden, und ändern nur das erstellte Menü nach Ihren Anforderungen.
Eintrag in Template Setup Bereich zum Überschreiben des Menüs:
|
… tt_content.menu.20.2 = HMENU tt_content.menu.20.2.stdWrap.wrap = tt_content.menu.20.2.1 = TMENU tt_content.menu.20.2.1 { noBlur = 1 expAll = 1 target = _self wrap = <ul class=”sitemap”>|</ul> NO.allWrap = NO.linkWrap = NO.wrapItemAndSub = <li class=”sitemap1”>|</li> NO.allWrap = | <span class=”usb”>. </span> NO.ATagBeforWrap = 0
# Übergabe aller Einstellungen in Objekt 2 aus Objekt 1 für 2 Ebene 2 < .1 2.wrap = <ul>|</ul> 2.NO.wrapItemAndSub = <li class=”sitemap2”>|</li>
# Übergabe aller Einstellungen in Objekt 3 aus Objekt 2 für 3 Ebene 3 < .2 3.NO.wrapItemAndSub = <li class=”sitemap3”>|</li> } … |
Jede Menüebene kann über eine eigene CSS Klasse formatiert werden. Zusätzlich wurde noch der Eintrag „<span class=“usb“>. </span> für Screenreader (Anforderung bei Barrierefreiheit der Website) eingefügt. Durch den Punkt wird die Stimme in der Aussprache durch den Screenreader nach jedem Menüpunkt gesenkt.
Eintrag in CSS für Sitemap Menü:
|
/****** class styles for sitemap ********/ .sitemap1{ list-style: none; font-weight: 700; } .sitemap2{ list-style: none; font-weight: 300; } .sitemap3{ list-style: none; font-weight: 300; }
/****** class styles for screen reader ********/ .usb{ display: block; position: absolute; left: -3000px; height: 0px; width: 0px; } |
Die Übergabe des Menüs muss hier an einen vorhandenen Menüpunkt gehängt werden. Der Menüpunkt wird durch das Bottom Menü erzeugt.
Zum allgemeinen Bedienungskomfort einer Webseite gehört der Link „Top“ (oder „gehe zum Anfang“) am unteren Ende einer Seite. Mit dieser Funktion wird der Benutzer wieder an den Anfang der Seite zurückgesetzt.
Im Template Setup Bereich wird dies mit folgendem Eintrag durchgeführt:
|
temp.gotop = HTML temp.gotop { value ( <a href="#top"><img src="fileadmin/templates/images/icons/button_top.gif" alt="zum Anfang" border=0></a> ) noBlur = 1 }
# Zusammefassung aller Buttons in einen Objekt temp.function = COA temp.function { 1 < temp.gotop }
temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY … # Ersetze der Subpart ###function### durch das Objekt “temp.function” subparts.function < temp.function … } … |

Für RealURL sollte folgendes im Template Setup Bereich eingetragen werden:
|
… # nächste Zeile wird benötigt um z.B. "href='#top" umzusetzen config.prefixLocalAnchors = all … |
Eine Alternative wäre folgender Code, wenn „prefixLocalAnchors“ nicht eingesetzt werden kann. Der Nachteil dieser Code ist um etliches langsamer, weil die komplette Seite neu geladen wird:
|
… # Button für zurück zum Anfang der Seite temp.gotop = COA temp.gotop { # holt die Domain 1 = TEXT 1.data = getenv:HTTP_HOST # holt den kompletten Pfad 2= TEXT 2.data = getenv:REQUEST_URI # setzt die Texte zusammen 1.wrap = <a href="http://| 2.wrap = |"><img src="fileadmin/templates/images/icons/top_btn.png" alt="zum Anfang" border="0"></a> } … |
Folgende Extension werden später im Kapitel der „Einrichtung der TYPO3 Extensions“ erklärt. Achten Sie auf die angegebenen Versionsnummern und die Reihenfolge weil manche Extensions für ihre Funktion die vorherigen Extensions benötigen. Dies ist jetzt keine Aufforderung dass Sie alle aufgelisteten Extensions installieren sollten. Lesen Sie zuerst die Extension Beschreibung und ermitteln Sie, welche Extension Sie benötigen um Ihre Anforderungen an das CMS System zu erfüllen.
Gehen Sie in der Navigation auf „Extension Manager“ und wählen Sie die Ansicht „Loaded Extension“ aus.
Liste der verwendeten Extensions (unter „Loaded Extensions“):
|
|
|
|
|
|
|
|||||||
|
Backend Modules |
|
||||||||||
|
|
Help>TYPO3 Manual |
cshmanual |
1.0.0 |
System |
Stable |
|
|||||
|
|
Media (DAM) |
dam |
1.2.3 |
Lokal |
Stable |
|
|||||
|
|
Media>Categories |
dam_catedit |
1.2.0 |
Lokal |
Stable |
|
|||||
|
|
phpMyAdmin |
phpmyadmin |
4.11.8 |
Lokal |
Stable |
|
|||||
|
|
Recycler |
recycler |
1.1.0 |
System |
Stable |
|
|||||
|
|
System Reports |
reports |
1.1.0 |
System |
Stable |
|
|||||
|
|
User>Open Documents |
opendocs |
1.0.0 |
System |
Stable |
|
|||||
|
|
|||||||||||
|
Miscellaneous |
|
||||||||||
|
|
Extbase Framework for Extensions |
extbase |
1.3.1-devel |
System |
Stable |
|
|||||
|
|
Scheduler |
scheduler |
1.1.0 |
System |
Stable |
|
|||||
|
|
Static Info Tables |
static_info_tables |
2.2.0 |
Lokal |
Stable |
|
|||||
|
|
|||||||||||
|
Backend |
|
||||||||||
|
|
Editor with syntax highlighting |
t3editor |
1.5.1 |
System |
Beta |
|
|||||
|
|
htmlArea RTE |
rtehtmlarea |
2.1.7 |
System |
Stable |
|
|||||
|
|
Static Templates |
statictemplates |
1.0.0 |
System |
Stable |
|
|||||
|
|
TSConfig / TypoScript Object Reference |
tsconfig_help |
1.1.0 |
System |
Stable |
|
|||||
|
|
Versioning Management |
version |
4.5.1 |
System |
Stable |
|
|||||
|
|
Workspaces Management |
workspaces |
4.5.1 |
System |
Stable |
|
|||||
|
|
|||||||||||
|
Frontend |
|
||||||||||
|
|
Captcha Library |
captcha |
1.1.1 |
Lokal |
Beta |
|
|||||
|
|
CSS styled content |
css_styled_content |
1.0.0 |
System |
Stable |
|
|||||
|
|
Fluid Templating Engine |
fluid |
1.3.0 |
System |
Beta |
|
|||||
|
|
Frontend Editing |
feedit |
0.1.0 |
System |
Beta |
|
|||||
|
|
|||||||||||
|
Frontend Plugins |
|
||||||||||
|
|
Formhandler |
formhandler |
0.9.17 |
Lokal |
Beta |
|
|||||
|
|
Frontend Filemanager |
air_filemanager |
0.9.27 |
Lokal |
Beta |
|
|||||
|
|
Image-, Flash-, Slideshow rotation |
ric_rotation |
1.9.17 |
Lokal |
Stable |
|
|||||
|
|
Indexed Search Engine |
indexed_search |
2.12.0 |
System |
Stable |
|
|||||
|
|
Modern Guestbook / Commenting system |
ve_guestbook |
2.10.1 |
Lokal |
Stable |
|
|||||
|
|
News |
tt_news |
3.1.0 |
Lokal |
Beta |
|
|||||
|
|
Searchbox for Indexed Search Engine |
macina_searchbox |
2.2.0 |
Lokal |
Stable |
|
|||||
|
|
Template Auto-parser |
automaketemplate |
0.1.3 |
Lokal |
Stable |
|
|||||
|
|
Tip-A-Friend |
tipafriend |
1.2.4 |
Lokal |
Stable |
|
|||||
|
|
|
||||||||||
|
|
TYPO3 skin |
t3skin |
4.5.0 |
System |
Stable |
|
|||||
1. Wechseln Sie im Backend auf „Ext Manager“.
2. Klicken Sie auf den „Title:“ der Extension z.B. „News“
3. Es werden jetzt die „DETAILS:“ oder die „CONFIGURATION“ der Extension angezeigt.
4. Wechseln Sie
jetzt im Drop-Down Menü „Backup/Delete“ aus.

5. Klicken Sie
jetzt auf den Text „Click here to download extension without compression“.

6. Wählen Sie
„Speichern“ im Downloadfenster und wählen Sie ein Verzeichnis aus in dem Sie
die Sicherungsdatei ablegen wollen.




Update einer Extension aus dem „Extension Manager“ – „Check for extension updates“.
Nach Auswahl einer Extension z.B. hier „phpmyadmin“ kommt nach dem klicken auf „Import/Update“ kommt die Fehlermeldung „…could not be deleted!“

Abhilfe:
Vergeben Sie die richtigen Berechtigungen für das „typo3conf/ext“ Verzeichnis.
SLES11:/srv/www/htdocs/newcms # chown -R
wwwrun:ftp typo3conf/ext
SLES11:/srv/www/htdocs/newcms # chmod -R 770 typo3conf/ext

Abhilfe:
Kontrollieren Sie ob der PHP Server das Modul „curl“ installiert hat.
Die “Full Backup” Extension erlaubt dem „Admin“ Backend Benutzer (wenn in der ACL freigeschaltet) eine einfache volle TYPO3 Installation-Backup und –Rücksicherung durchzuführen.
Das Backup wird aus folgenden Verzeichnissen erstellt:
· “typo3conf/localconf.php” Datei oder das ganze Verzeichnis (mit inkludiere…typo3conf…!)
· “fileadmin” directory
· “uploads” directory
· ein kompletter Datenbank Dump (mysqldump) der TYPO3 MySQL Datenbank
Die letzte Version der Extension ist die V0.9.2 vom Jahr 2008
Hinweis Diese Extension kann immer dann eingesetz werden, wenn Sie ein Backup einer vorhande TYPO3 Installation durchführen wollen. Bei der Rücksicherung auf den gleichen Server sollte es keine Probleme geben. Aber für eine Rücksicherung auf einem anderen Server aber oder in eine andere TYPO3 Instanz sollte diese Extension nicht verwendet werden. Sicher Sie in diesem Fall die Datenbank mit dem „sqldumper“ und die Dateien über einen FTP Client.
WICHTIG Die Extension bringt unter TYPO3 4.6 einen Fehler.
Hinweis Bei der Installation können Fehler über nicht ausreichende Berechtigungen auftreten. Die Extension benötigt aus irgendeinem Grund alle Rechte bei der Installation, also auch für “Other”, auf das Extension Verzeichnis “w4x_backup”. Nach der Installation kann die Berechtigung für “Other” wieder entfernt werden.
1. Installieren Sie
die Extension „w4x_backup“ über den Extension Manager.
2. Klicken Sie auf
„Make Updates“ wenn die Extension dies verlangt.

3. Als Pfad für das
„MySqlDump command“ geben Sie „/usr/bin/mysqldump“.
4. Als Pfad für das
„MySql command“ geben Sie „/usr/bin/mysql“.
5. Alle anderen
Einstellungen können Sie im Moment so belassen wie Sie sind. Klicken Sie jetzt
auf „Update“.
6. Wählen Sie jetzt
aus der Navigation „Full Backup“ aus (eventuell Refresh ausführen).
7. In der
Auswahlbox wird automatisch „Backup“ ausgewählt. Sie brauchen jetzt nur mehr
auf „Backup jetzt erstellen!“ klicken.
8. Kontrollieren
Sie im Verzeichnis „typo3temp“, ob eine Backup Datei angelegt wurde.
9. Öffnen Sie die gepackte Datei und kontrollieren Sie, ob die MySql Datenbank (eine Datei mit der Endung „sql“) mit gesichert wurde.
Die Extension muss dazu, wie unter Installation angeführt installiert sein.
1. Wählen Sie aus dem Navigation “Tools” à “Full Backup” aus.
2. Wählen Sie (wenn nicht schon eingestellt) im Drop-Down Menü auf der rechten Seite „Backup“ aus. Es erscheint das unten angezeigte Backup-Fenster.

3. Klicken Sie jetzt auf „Backup jetzt erstellen!“.
4. Wenn alles klappt erscheint folgende Meldung.

5. Wenn die Meldung “There was an operation report” angezeigt wird, ist ein Fehler beim Backup aufgetreten. Dies hängt meist mit den Berechtigungen des Benutzers zusammen unter welchen der Apache Server auf diesem Rechner läuft.

6. Wenn
Sie auf “Operation Log” klicken können Sie sich das Protokoll des Backups
ansehen. Sehen Sie sich besonders die Einträge unter “Problematic files:“ an
und versuchen Sie diese Fehler (meist Berechtigungsprobleme) zu beheben.
Anmerkung: Vorsicht wenn gar nichts angezeigt wird, heißt das nicht,
dass ein Backup erfolgreich erstellt wurde. Kontrollieren Sie immer ob die
Backup Datei vorhanden ist.
7. Wenn sehr viele
Einträge unter “Problematic files:“ angezeigt werden, sollten Sie nochmals die
Berechtigung auf Ihr TYPO3 Verzeichnis kontrollieren oder neu setzen.
Bei einen open SUSE 10 Server können Sie die Berechtigung mit folgenden
Befehlen auf alle notwendigen TYPO3 Verzeichnisse innerhalb des Verzeichnisses
„rpw“ setzen:
|
cd /srv/www/htdocs/rpw chown –R wwwrun fileadmin typo3conf typo3temp uploads chmod –R u+rwx fileadmin typo3conf typo3temp uploads |
8. Die Backup Datei
wird im Verzeichnis „./typo2temp/w4x/“ mit einen ähnlichen Namen wie:
www.home.com-2007-06-17-96e5a50a69ad1f389967.tar.gz angelegt.
Beim Versuch die Extension zu installieren erscheint folgende Meldung.
„Warnung: fopen(/srv/www/htdocs/rpw/typo3conf/ext/w4xbackup/)…“
Ursache:
Liegt an den Berechtigung des neu erstellen Extension Verzeichnisses „w4x_backup“. Tritt bei der Version 0.9.1 auf bei der Version 0.9.2 sollte es funktionieren.
Abhilfe:
Vergeben Sie neue Berechtigungen mit dem FTP Client oder auf der Konsole:
|
SLES11:~ # chmod a+rwx /opt/lampp/htdocs/rpw/typo3conf/ext/w4x_backup |
Nach Durchführung eines Backups erscheint folgende Meldung am Bildschirm
|
Warning: unlink(/srv/www/htdocs/rpw/typo3temp/w4x/www.Homepage.com-2009-04-18-b3f1e3dbcfc5b76a1966.sql) [function.unlink]: No such file or directory in /srv/www/htdocs/rpw/typo3conf/ext/w4x_backup/mod1/index.php on line 641 |
Ursache:
Wenn PHP im „safe_mode“ verwendet wird, so wird in der „php.ini“ mit der Option „safe_mode_exec_dir” angegeben, wo sich die ausführbaren Dateien für PHP befinden.
In diesem Verzeichnis werden unabhängig von Einstellungen in der Extension „w4x_backup“ die Dateien „mysqldump“ und „mysql“ gesucht.
Kontrollieren Sie die Apache Error-Logdatei „/var/log/apache2/error_log“ nach folgenden Eintrag:
|
sh: /usr/local/bin/mysqldump: No such file or directory |
Dies bedeute das die Dateien „mysqldump“ und „mysql“ im Verzeichnis „/usr/local/bin/“ nicht gefunden werden.
Abhilfe:
Sie könnten symbolische Links in dem Verzeichnis “/usr/local/bin/ für die Programme erstellen, wenn es sich um einen lokalen Server handelt:
SLES 11:~ # ln -s /usr/bin/mysqldump /usr/local/bin/mysqldump
SLES 11:~ # ln -s /usr/bin/mysql /usr/local/bin/mysql
SLES 11:~ # ln -s /bin/tar /usr/local/bin/tar
SLES 11:~ # ln -s /bin/bin/mywhoami /usr/local/bin/whoami
Wenn der TYPO3 Server bei einen Provider gehostet wird, so muss der Provider dafür sorgen das Sie über PHP Zugriff auf die Dateien haben.

Wenn man auf den Text „Operation log“ klick sieht man folgendes

Ursache:
Das Backup Programm überprüft die Zugriffsberechtigungen auf die Verzeichnisse und Dateien welche gesichert werden sollen mit dem Benutzer „wwwrun“. Wenn Ihr System einen anderen Benutzer für die Zugriffsberechtigungen verwendet, oder Berechtigungen falsch vergeben wurden, wird diese Meldung ausgegeben.
Im der obigen Logdatei betrifft dies die Datei „fileadmin/templates/images/clear.gif“ welche nicht dem Benutzer „wwwrun“ zugeteilt ist.
Abhilfe:
Vergeben Sie vor Durchführung eines Backups nochmals die Zugriffsberechtigungen für den Benutzer „wwwrun“ neu:
|
SLES11:~ # chown -R wwwrun:ftp /srv/www/htdocs/rpw SLES11:~ # chmod -R u+rwx /srv/www/htdocs/rpw |
Sie können dies nach der Sicherung wieder zurücksetzen.
|
Fatal error: Cannot use string offset as an array in /xxx/xxx/xxx/xxx/xxx/typo3/sysext/lang/lang.php on line 311 |
Ursache:
Der Fehler tritt nach dem Update auf die TYPO3 4.6 auf.
1) Diesen Fehler gibt es auch in Zusammenhang mit der Extension „multicolumn“ auf.
2) Fehler in Zusammenhang mit „w4x_backup“ Extension.
Abhilfe:
zu 1) Für die Extension „multicolumn“ muss in der Datei
„/hooks/class.tx_multicolumn_cms_layout.php“
Muss die Zeile 53 auskommentiert werden:
„//$GLOBALS['LOCAL_LANG'][$llKey]['deleteWarning'] = $deleteWarningOrginal . chr(10) . $deleteWarning;“
zu 2) Noch keine Ahnung. Ich vermute das die Extension für die TYPO 4.6 schon zu alt ist, der letzte Update fand im Jahr 2008 statt.
Die unten angeführten Pfadangaben beziehen sich wieder auf eine „XAMPP“ Installation. Bei Verwendung anderer Pakete sind die Pfade entsprechend Ihrer Installation zu ersetzen.
Wechseln Sie auf dem Server in die Befehlszeile oder öffnen Sie ein „Terminal-Programm“ im KDE.
Geben Sie folgendes für die Rücksicherung ein. Bei der Eingabe des Backupnamens brauchen Sie nur den Anfang des Namens einzugeben und können dann die „Tab“ Taste zur automatischen Ergänzung drücken:
|
SLES11:~ # tar xvfz /srv/www/htdocs/rpw/typo3temp/w4x/2006-02-03- a2d8e9e25273f6b1646c.tar.gz |
Das „rpw“ im der Pfadangabe ist der Pfad Ihrer TYPO3 Installation.
Nachdem die Rücksicherung der Dateien erfolgt ist, müssen Sie noch die Datenbank mit folgendem Befehl rücksichern. Sie können wieder mit „Tab“ den Namen automatisch Ergänzen lassen. Sie stehen dann mit Cursor nach dem Punkt und brauchen nur mehr „sql“ eingeben:
|
SLES11:~ # /opt/lampp/bin/mysql -p rpw < /srv/www/htcdosc/rpw/typo3temp/w4x/2006-02-03- a2d8e9e25273f6b1646c.sql |
Wobei das „rpw“ nach „mysql“ für den Datenbanknamen der MySql Datenbank steht.
Das zweite „rpw“ im Pfad ist der Pfad Ihrer TYPO3 Installation.
Damit wäre die Rücksicherung abgeschlossen.
![]()
Ursache:
Sie haben den Parameter „-p“ für die Passwortabfrage des „root“ Users der MySQL Datenbank nicht eingegeben oder das eingegebene Passwort ist falsch. Eventuell haben Sie für den MySQL Server ein anderes Passwort als für den „root“ Benutzer des Servers.
![]()
Ursache:
Es ist keine Datenbank mit dem Namen „rpw“ vorhanden. Erstellen Sie zuerst die Datenbank mit dem „phpMyAdmin“ oder mit:
|
SLES11:~ # /usr/bin/mysqladmin –u root –p create rpw |
Diese Extension beinhaltet zwei Hauptelemente:
·
Indizierung – Ein Service welches TYPO3 Seiten, während des
Rendering Prozesses, schnell indiziert. Die Indizierung beinhaltet dabei alle
Wörter von dieser Seite (oder spezielle Bereiche). Der Index einer Seite wird
aber erst beim ersten Zugriff, auf diese Seite, über das Frontend aufgebaut.
Sie können auch festlegen ob eine Seite in den Index aufgenommen werden soll.
Zusätzlich können Sie noch externe Dokumente Indizieren lassen, wie z.B. PDFs,
Word-Dokumente, HTMLs, etc.
· Suche – Sie können eine Seite anlegen die das Plugin „Indexed Search“ verwendet. In dieser Seite könne Sie die Suche festlegen. In einer weiteren Seite können Sie die Suchergebnisse anzeigen lassen.
Installation der Extension „Indexed Search
Engine“(indexed_search) vom “Ext Manager”. Diese Extension ist schon nach der
Grundinstallation vorhanden und kann in der Auswahl “Available extension to
install“ durch Anklicken des grauen Plus Symbols
installiert
werden. Wurde die Extension korrekt installiert wird das grüne Minus Symbol
angezeigt.
Die Indexed Search Engine von TYPO3 ist eine Extension die es erlaubt für die einzelnen Seiten der Webseite einen Index zur Suche von Inhalten anzulegen. Die Indizierung der Seiten erfolgt dabei nicht automatisch sondern muss im Setup TS der Seite angegeben werden.
Template Setup Einstellung:
|
… # Indexed Search initalisieren und Sprache festlegen … page = PAGE … |
Hinweis In dem obigen Beispiel wurde auch gleich die
Default Sprache auf Deutsch festgelegt. D.h. die Sprachen-ID für Deutsch wurde
auf „0“ für die Standardsprache festgelegt.
In den Seiteneigenschaften deaktivieren Sie, für Seiten
welche nicht in die Indizierung aufgenommen werden soll, die Option „Include
in Search“.

|
/*----------------------------------------------------------------------------------------------*/ /*--------------------------------- Formating indexedsearch -----------------------------------*/ /*----------------------------------------------------------------------------------------------*/
/* Formatieren den Text "Suche nach:" von der Suchzeile */ .tx-indexedsearch TD { font-family: Verdana, Arial, Helvetica, sans-serif; margin-top: 6px; font-size: 0.8em; } /* Formatieren den Button von der Suchzeile */ .tx-indexedsearch .tx-indexedsearch-searchbox INPUT.tx-indexedsearch-searchbox-button { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.7em; margin-top: 6px; margin-bottom: 6px; width: 80px; } /* Formatieren das Eingabefeld der Suchzeile */ .tx-indexedsearch .tx-indexedsearch-searchbox INPUT.tx-indexedsearch-searchbox-sword { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.8em; margin-top: 6px; margin-bottom: 6px; width: 150px; } /* Formatieren der Anzeige vom eingegeben Suchwortes */ .tx-indexedsearch .tx-indexedsearch-whatis P.tx-indexedsearch-sw { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0,7em; font-weight: bold; background: #ffffff; } /* Formatieren der Anzeige von "Suche nach ..." */ .tx-indexedsearch .tx-indexedsearch-whatis { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0,7em; background: #ffffff; margin-top: 6px; margin-bottom: 5px; } /* Formatierung der Aufzählung der Gruppenergebnisse */ .tx-indexedsearch-sectionlinks { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 1em; } /* Formatieren der Aufzählung der Gruppenergebnisse mit LI */ .tx-indexedsearch li { margin-left: 15px; } /* Formatieren der Aufzählung Gruppenergebnisse Link Texte */ .tx-indexedsearch .tx-indexedsearch-sectionlinks a { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0,7em; text-decoration: none; } /* Formatiere Mousover für Aufzählung Gruppenergebnisse Link Texte */ .tx-indexedsearch ul li a:hover { text-decoration: none; background: #D0D4D6; } /* Formatieren der Anzeige von "Seite x" */ .tx-indexedsearch .tx-indexedsearch-browsebox-SCell { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0em; /* Anzeige von Seite wurde ausgeblendet */ text-decoration: none; /* Anzeige von Seite wurde ausgeblendet */ } /* Formatierung der Anzeige vom Suchergebnissen */ .tx-indexedsearch .tx-indexedsearch-res P { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.7em; } /* Formatieren Gruppenüberschrift */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 1em; background: #ffffff; margin-top: 16px; margin-bottom: 6px; } /* Formatieren Gruppenüberschrift H2 */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 1em; background: #ffffff; margin-top: 0px; margin-bottom: 0px; } /* Formatiere der Gruppenüberschrift Links */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 a { text-decoration: none; } /* Formatiere Mousover für Gruppenüberschrift Link */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead H2 a:hover { text-decoration: none; background: #D0D4D6; } /* Formatieren Gruppe in einer Tabelle */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead TABLE { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 1em; background: #ffffff; } /* Formatieren der Gruppe TD Definition */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-secHead TD { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 1em; background: #ffffff; vertical-align: middle; } /* Formatieren des ersten Zeile vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0,8em; font-weight: bold; margin-top: 6px; margin-bottom: 0px; } /* Formatieren von weiteren Zeile vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title P { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.8em; background: #ffffff; font-weight: bold; margin-top: 6px; margin-bottom: 0px; } /* Formatiere nur das Icons vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-icon { } /* Formatiere nur die Nummer vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-number { } /* Formatiere nur den Titels vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption { } /* Formatiere nur den Titels vom Suchergebnis Link */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption a { text-decoration: none; } /* Formatiere Mousover nur fr Titels vom Suchergebnis Link */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-title-caption a:hover { text-decoration: none; background: #D0D4D6; } /* Formatiere nur die Prozent vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-idexedsearch-percent { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.8em; background: #ffffff; font-weight: normal; } /* Formatieren der Beschreibung vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-descr P { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.7em; background: #ffffff; } /* Formatieren der gefundenen Suchtexten in der Beschreibung vom Suchergebnis */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-descr .tx-indexedsearch-redMarkup { color: red; } /* Formatieren der Inexed Search Info unterhalb der Beschreibung */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.8em; background: #ffffff; } /* Formatieren Indexed Search Info unterhalb der Beschreibung */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info a { text-decoration: none; } /* Formatieren Mousover der Indexed Search Info unterhalb der Beschreibung */ .tx-indexedsearch .tx-indexedsearch-res .tx-indexedsearch-info a:hover { text-decoration: none; background: #D0D4D6; } /* Formatieren des Textes wenn nichts gefunden wird */ .tx-indexedsearch P.tx-indexedsearch-noresults { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 0.7em; background: #ffffff; font-weight: bold; text-align: left; }
/* Macina Suchbox */ .tx-macinasearchbox-pi1 { width: 190px; height: 11px; } |
Zur Anzeige einer variablen Such Box, welche über eine Template steuerbar ist wurde die Extension „Searchbox for Indexed Search Engine“ (macina_searchbox) installiert.
Einstellung im Template Setup Bereich (erste Version):
|
… plugin.tx_macinasearchbox_pi1 { pidSearchpage = 17 templateFile = fileadmin/templates/html/macina_template.tmpl } … |
Einstellung im Template Setup Bereich (zweite Version):
|
… marks.searchbox > … |
Passen Sie ggf. den Template Pfad an Ihre Verzeichnisstruktur an.
Die Extension muss jetzt nur noch auf Ihrer Webseite anstelle eines Markers eingefügt werden.
Im Template Setup Bereich den Aufruf der Searchbox einfügen:
|
... temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY … # subparts.search_bottom < plugin.tx_indexedsearch subparts.search_bottom < plugin.tx_macinasearchbox_pi1 … |
Normalerweise zeigt Indexed Search nach einer Suche immer alle Ergebnisse die gefunden wurden an. Egal in welcher Sprache dieser Inhalt angelegt worden ist.
Wenn Sie eine Mehrsprachige Seite haben, und die Ergebnisse
immer nur in der jeweiligen gewählten Sprache angezeigt werden sollen, fügen
Sie folgendes zu den Sprachdefinitionen hinzu:
|
… #default language plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 0 … [globalVar = GP:L = 1] … # Index search english plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 1 … [global] [globalVar = GP:L = 2] … # Index search espanol plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 2 … [global] … |
Man kann über die Indexed Search Engine auch externe
Dokumente Indizieren lassen, wie z.B. PDFs, Word-Dokumente, HTMLs, etc. Damit
dies funktioniert sind noch zusätzliche Programmpakete für das Linux System
notwendig.
Hinweis Die unten angeführte Anleitung wurde so angelegt, dass Sie für lokale TYPO3 Server, sowie auch für TYPO3 Installationen bei einem ISP eingesetzt werden könnte, soweit vorher die Softwarepakete auf einer lokalen Installation erstellt wurden, und dann auf dem ISP Server hochgeladen werden.
Zuerst erstellen wir ein zusätzliches Verzeichnis für die Programme unter dem Root Verzeichnis der TYPO3 Installation.
SLES11:~ # mkdir /srv/www/htdocs/typo3_progs
In diesem Verzeichnis werden die einzelnen Programme abgelegt.
HTMLDOC wird für die Zeichencodierung in Kombination mit dem TYPO3 PDF
Generator Plugin verwendet. Wir brauchen das, um ordnungsgemäße Deutsche
Sonderzeichen zu erhalten.
Holen Sie sich die neueste Version von http://www.htmldoc.org/software.php.
Wir kopieren dann das Programm in unser neu erstelltes „typo3_progs“ Verzeichnis, entpacken es, und führen die Installation aus.
|
SLES11:~ # cp htmldoc-1.8.27-source.tar.gz /srv/www/htdocs/typo3_progs SLES11:~ # cd /srv/www/htdocs/typo3_progs SLES11:~ # tar -xvzf htmldoc-1.8.27-source.tar.gz SLES11:~ # cd htmldoc-1.8.27 SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/htmldoc-1.8.27 SLES11:~ # make SLES11:~ # make install SLES11:~ # cd .. SLES11:~ # chown -R wwwrun:ftp htmldoc-1.8.27 SLES11:~ # chmod -R 770 htmldoc-1.8.2 |
Hinweis Beachten Sie das durch die Option „—prefix“ die Installation in dem neuen Programmverzeichnis „typo3_progs“ durchgeführt wird. Wenn Sie jetzt das TYPO3 PDF-Generator Plugin installieren, müssen Sie als Installationspfad für htmldoc: „/ srv/www/typo3_progs/htmldoc-1.8.27 " angeben.
Damit PDF-Dateien von der Indexed Search Engine indiziert werden, müssen Sie das Paket „Xpdf“, welches die notwendigen Werkzeuge „pdftotext“ und „pdfinfo“ enthält installieren.
Laden Sie jetzt das Source Paket für “xpdf” von folgender Website:
http://www.foolabs.com/xpdf/download.html
Führen Sie danach folgende Befehle aus:
|
SLES11:~ # cp xpdf-3.03.tar.gz /srv/www/htdocs/typo3_progs SLES11:~ # cd /srv/www/htdocs/typo3_progs SLES11:~ # tar -xvzf xpdf-3.03.tar.gz SLES11:~ # cd xpdf-3.03 SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/xpdf-3.03 --enable-a4-paper --with-appdef-dir=/srv/www/htdocs/typo3_progs/xpdf-3.03 SLES11:~ # make SLES11:~ # make install SLES11:~ # cd .. SLES11:~ # chown -R wwwrun:ftp xpdf-3.03 SLES11:~ # chmod -R 770 xpdf-3.03 |
Um zu testen, ob Inhalte von PDF-Dokumente wirklich indiziert werden, sollten Sie erst eine PDF-Datei als Content Element Dateilink Ihrer Typo3 Webseite hinzufügen. Löschen Sie alle alten Indizes dieser Seite. Die Dateien werden indiziert, wenn diese Webseite im Browser (per HTTP) aufgerufen wird. Die Indizierung kann auch durch Extension Site Crawler erfolgen.
Das Paket „catdoc“ ist das nächste Paket, welches für Indexed Search Engine benötigt wird. Dieses wird verwendet um WORD Dokumente zu indizieren, aber keine *docx Dokumente. Holen Sie sich die Source Dateien von http://site.n.ml.org/info/catdoc/
Führen Sie danach folgende Befehle aus:
|
SLES11:~ # cp catdoc-0.94.tar.gz /srv/www/htdocs/typo3_progs SLES11:~ # cd /srv/www/htdocs/typo3_progs SLES11:~ # tar -xvzf catdoc-0.94.tar.gz SLES11:~ # cd catdoc-0.94 SLES11:~ # ./configure --prefix=/srv/www/htdocs/typo3_progs/catdoc-0.94 --disable-wordview --disable-langinfo --with-input-charset=8859-15 --with-output-charset=8859-15 |
WICHTIG Damit „catdoc“ mit deutschen Sonderzeichen arbeiten kann, üssen Sie die „config.h“ Datei im Verzeichnis '/src/' mit vi-Editor ändern.
Ändern Sie die Werte für SOURCE_CHARSET und TARGET_CHARSET. Ersetzen
Sie sie durch: '8859-15 '.
|
… /* Character encoding used by default for 8-bit source files */ #define SOURCE_CHARSET "8859-15"
/* Output character encoding used by default, if impossible to determine encoding from locale */ #define TARGET_CHARSET "8859-15" … |
Führen Sie jetzt die Kompilierung und Installation aus:
|
SLES11:~ # make SLES11:~ # make install SLES11:~ # cd .. SLES11:~ # chown -R wwwrun:ftp catdoc-0.94 SLES11:~ # chmod -R 770 catdoc-0.94 |
1. Gehe Sie TYPO3
Backend auf „Extension Manager“ und klicken Sie dann auf die Extension „Indexed
Search“. Ändern Sie den Standardpfad für „Path to PDF parsers“ und „Path to
WORD parser“ von „/usr/local/bin/“ auf ihr vorher angelegtes Verzeichnis um
„/srv/www/htdocs/typo3_progs/“.

2. Testen Sie dann
ob die Pfade vom PHP über „open_basedir“ aufglöst werden.
Testen ob die Programme über „open_basdir“ gefunden werden:
|
<?php error_reporting(E_ALL & ~E_NOTICE); ini_set('display_errors', 1);
echo '<p>open_basedir: ' . ini_get('open_basedir') . '</p>';
if (is_file('/usr/bin/pdfinfo')) {; echo '<p>pdfinfo found</p>'; } else { echo '<p>pdfinfo not found</p>'; } ?> |
3. Erstellen Sie eine Datei mit einem beliebigen Namen und der Endung „php“ im Root Verzeichnis der TYPO3 Installation. Kopieren Sie dann den oben angeführten Code in diese Datei und führen Sie die Datei aus. Sollten Sie keine Fehlermeldung erhalten kann der „open_basedir“ Pfad die zusätzlichen Programme korrekt finden.
1. Gehe Sie jetzt
im TYPO3 Backend auf „Extension Manager“ und klicken Sie dann auf die Extension
„Indexed Search“. Aktvieren Sie unter „Use ‚crawler‘ extension to index ex..“
damit die Extension für Indexed Search verwendet wird.

2. Zusätzlich
deaktivieren Sie den „Crawler“ im Frontend. Damit wird der „Crawler“ nur mehr
im Backend ausgeführt.

3. Erstellen Sie im
Backend einen neuen Benutzer mit dem Namen „_cli_crawler“ und einem beliebigen
Kennwort. Dem Benutzer brauchen Sie keine „Admin“-Rechte oder sonstige
Berechtigungen im Backend zu vergeben. Es reicht das alleinige Vorhandensein
dieses Benutzers im Backend.
4. Achten Sie
darauf das im Root Template der TYPO3 Site der Parameter „no_cache=1“ nicht
gesetzt ist. Der Crawler funktioniert nur wenn die Webseiten gecached werden.
5. Im Root Template
Setup Bereich wird dann noch folgender TypoScript eingetragen:
|
… config.index_enable = 1 config.index_externals = 1 … |
Hinweis Der „Crawler“ wird hier integriert für das Backend eingrichtet und läuft nicht als eigener „Cron“-Job. Damit kann diese Art von „Crawler“ auch bei einer Installation von TYPO3 bei einem ISP verwendet werden.
1. Download der
Extension „crawler“ durchführen.
2. Installieren Sie
die Extension „crawler“ mit den Standardwerten bis auf den Eintrag für
„Frontend website base path“. Passen Sie diesen Pfad Ihrer Installation an.

3. Gehen Sie danach
auf die Homepage Seite im TYPO3 Verzeichnisbaum und legen Sie ein neues Objekt
„Crawler Configuration“ an.
![]()
4. Geben Sie als
Namen „Re-indexing Homepage“ ein und klicken Sie auf „Re-indexing
[tx_indexedsearch_reindex]“. Speichern Sie das Objekt danach ab.

5. Danach wird im
Feld „Configuration“ die Sprachdefinition und im Feld „Base url“ der Host und
die Domänen der Website eingegeben. Alle andere Felder belassen Sie wie Sie
sind.

6. Speichern Sie Sie die Definitonen ab.
1. Gehen Sie im BE
auf „Web“ – „Info“
2. Wählen Sie eine
Seite aus dem Verzeichnisbaum aus, in welcher Sie die Indizierung testen
wollen.
3. Wählen dann aus
den Dropdown Menüs „Indexsuche“ und „Overview“ aus. Sie sehen, dass noch keine
Inhalte der Webseite indiziert wurden („No indexed“).

4. Wechseln Sie jetzt
im Dropdown Menü auf „Site Crawler“ und „Start Crawling“. Klicken Sie dann
nacheinander zuerst auf den Text unter „Configuration“ dann auf „Update“.

5. Klicken Sie
jetzt im selben Fenster auf „Crawl URLs“ und dann auf „Continue and show
log“.

6. Danach sollten
Sie folgende Anzeige sehen in welcher Sie dann wieder auf das Symbol für
„Aktualisieren“ klicken. Dadurch wird dieser Index manuell upgedatet.

In der „Run-time“ Spalte erscheint dann das aktuelle Datum und die Uhrzeit. In
der „Status“-Spalte sollte jetzt "OK" stehen.
7.
Wechseln Sie wieder zu "Indexed Search" in der oberen
Dropdown-Menü und Spaß zu sehen, der Inhalt Ihrer Seite indiziert:

Nun führen Sie die obigen Schritte erneut mit einer Seite mit Links zu Dokumenten aus, die Sie
irgendwo in „fileadmin“
Verzeichnis abgelegt haben. Halten Sie sich an die
bekannten Dokumenttypen von Indexed
Search wie z.B. doc, xls, ppt, pdf,
.
Nach der Bearbeitung Ihrer Seite sollten Sie Ihre Warteschlange mit beliebig vielen Einträgen gefüllt sein, so
viele wie Sie Links zu Dokumenten haben:

• Prozess der Warteschlange mit den kleinen Button
"Aktualisieren".
• Wechseln Sie wieder zu "Indexed Search" in der oberen Dropdown-Menü und genießen Sie sehen die
Seite Inhalte und Dokumente indiziert:

Sie
können jetzt versuchen
Ihre ganze Website mit der gleichen Methode zu
indizieren. Der einzige Unterschied ist, dass Sie von der Wurzel (in der Regel auf der Homepage) starten, und dann wählen Sie im Verzeichnisbaum rekursiv (Option "Tiefe"
in „Web“ –„Info“ – „Site Crawler“ – „Start Crawling“).

Als Ergebnis sollten nacher alle bekannten Dokumente indiziert sein.
Im Admin Panel wird angezeigt, dass die Programme für die Indizierung von externen Dokumenten nicht gefunden wurden. Diese sind „pdftotext“, „pdfinfo“, „catdoc“, „ppthtml“ und „xlhtml“.

Ursache:
Es fehlen für das Indizieren von Dokumenten noch zusätzliche Module wie z.B. das „pdftotext“ und „pdfinfo“ für PDF Dokumenten, oder „catdoc“ für HTML, etc.
Abhilfe:
Installieren Sie der Reihenfolge nach „htmldoc“, „xpdf“ und „catdoc“. Siehe dazu Kapitel „12.5.6 Installation für Indizierung von externen Dokumenten“.
|
… configure: WARNING: Couldn't find X configure: WARNING: Couldn't find Motif configure: WARNING: Couldn't find FreeType configure: WARNING: -- You will be able to compile pdftops, pdftotext, pdfinfo, pdffonts, pdfdetach, and pdfimages, but not xpdf or pdftoppm … |
Ursache:
Es gibt ein paar Probleme beim Kompilieren von Xpdf mit FreeType-2. Die Symptome sind seltsame Kompilierungsfehler, die im Zusammenhang mit FreeType auftreten ("FT_Error nicht deklariert", gehören Syntaxfehler in FreeType-Dateien, etc.)
Bei FreeType 2 sind zwei verschiedene Verzeichnisse auf dem Include-Pfad. Zum Beispiel, wenn Sie in /usr/local FT2 installiert haben, müssen Sie "-I/usr/local/include" (für <ft2build.h>) und "-I/usr/local/include/freetype2" (für <freetype/*.h>). Die Xpdf configure-Skript bietet keine Möglichkeit der Einstellung zwei verschiedene Include-Verzeichnisse für FT2.
Es wird noch schlimmer ... Wenn Sie auch FreeType 1 installiert haben z.B. in „/usr/local/“, dann muss das Verzeichnis „/usr/local/include/freetype2“ vor dem Verzeichnis „/usr/local/include“ gesucht werden (weil ansonsten die installierte FT1 im Verzeichnis „/usr/local/include/freetype/*.h“ viele Dateinamen gemeinsam mit FT2 hat – und diese werden dann anstelle der FT2-Dateien geladen werden).
Abhilfe:
Definieren Sie folgende Variablen vor der Ausführung vom „configure“.
SLES11:~ # export CFLAGS="-I/usr/include/freetype2 -I/usr/include"SLES11:~ # export CXXFLAGS="-I/usr/include/freetype2 -I/usr/include"SLES11:~ # ./configureSLES11:~ # make
… |

Ursache:
Nach Eintragung vom „open_basedir“ in die virtuelle Host
Konfiguration vom Apache ist dieser aufgetreten. Im Apache Error Log steht dazu
folgendes:
|
[Sat Oct 29 17:39:26 2011] [error] [client 10.0.0.144] PHP Fatal error: Unknown: Failed opening required '/srv/www/htdocs/rpw/typo3/index.php' (include_path='.:/usr/share/php5:/usr/share/php5/PEAR') in Unknown on line 0 [Sat Oct 29 17:39:27 2011] [error] [client 10.0.0.144] PHP Warning: Unknown: open_basedir restriction in effect. File(/srv/www/htdocs/rpw/typo3/index.php) is not within the allowed path(s): (/srv/www/htdocs/rpw:/usr/bin:/srv/www/htdocs/typo3_progs:/usr/local/bin) in Unknown on line 0 |
Abhilfe:
Sie müssen beim „open_basedir“ auch den Pfad der Website für „typo3“ inkludieren. Ansonsten kann die „index.php“ nicht geöffnet werden.
Von aktiven Inhalten der Extension „tt_news“ oder auch „tt_products“ erscheinen keine Ergebnisse nach einer Suche.
Abhilfe:
In älteren Versionen von TYPO3 gab es Probleme mit der
Indexed Search Engine im Zusammenhang mit Seiten welche aktiven Inhalte
enthalten. Dies sind z.B. „tt_news“ oder „tt_products“ Extension.
Damit die Indizierung trotzdem über solche Seite läuft, muss aus dem Template
Setup der Eintrag für das News-Modul und für das Shop Modul entfernt werden.
Dann den Index neu bilden indem man die Seiten besucht werden. Danach die
beiden Extensions Template Setup wieder aktivieren.
Dieser Fehler ist bei älteren TYPO3 Versionen aufgetreten, welche noch die „Csh_de“ verwendet haben.

Abhilfe:
Dies passiert bei der Übersetzung auf den deutschen Text durch die Extension „csh_de“.
Gehen Sie in das Verzeichnis „typo3conf/ext/csh_de/indexed_search/pi/“. Machen Sie eine Sicherung von der Datei „de.locallang.xml. Öffnen Sie die Datei „de.locallang.xml“. Suchen Sie den Text „pi_list_broserresults_displays“. Entfernen Sie aus dem Text nachfolgenden Text die beide „/span“. Speichern Sie die Datei wieder ab.
Auf der Website soll ein sogenannter „Print Link“ zur Druckvorschau oder zum Druck der Seite angezeigt werden. Dabei wird nur das Inhaltsfenster der angezeigten Seite übernommen, der Banner, die Fußzeile sowie die Navigation, wird bei der Druckvorschau oder beim Druck weggelassen.
1. Da unter TYPO3
4.4.x die statischen Templates unter „Include Static“ nicht mehr automatisch
installiert werden, muss der für „type=98“ ein Script in das Root-Template
eingebunden werden.
Unter „Template“ wählen Sie das Root-Template aus. Klicken Sie jetzt auf den
Text „Setup“ und fügen Sie das unten angeführte Script hinzu.
|
… print
= PAGE … |
2. Wenn Sie mit
einem eigenen HTML Template für Print Links arbeiten wollen, kopieren Sie aus
dem Verzeichnis „typo3/sysext/cms/tslib/media/scripts/printversion_content.tmpl“
die Datei „printversion_content.tmpl“ in das Verzeichnis „fileadmin/templates“.
3. Ändern Sie die HTML Template Datei ggf. entsprechend Ihren Bedürfnissen ab.
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Print version example template</title> </head> <body> <br /> <br /> <br /> <h1>PRINTER FRIENDLY TEMPLATE</h1> <br /><br /><br /><br /><hr /><br /><br /><br /> <em> This template is the framework for printer friendly display of content. This file is the default file used by the static_template 'plugin.alt.print'.<br /> <br /> You can insert a few markers:<br /> <br /> ###PAGE_TITLE### - the page title<br /> ###PAGE_SUBTITLE### - the page subtitle<br /> ###PAGE_AUTHOR### - the page author (with email address link)<br /> ###CONTENT### - the 'normal' content of the page <br /> and<br /> ###PAGE_UID### - the page uid number (eg. for use with a 'back' link)<br /> </em> <br /> <br /> <br /> <br /> <!-- ###DOCUMENT_BODY### begin The content between these subpart markers goes right into the body section of the webpage when displayed: --> <hr /> ###CONTENT### <hr /> <!-- ###DOCUMENT_BODY### end --> </body> </html> |
4. Erstellen Sie
Sie für Formatierungen eine eigene CSS Datei im Verzeichnis „fileadmin/templates/css/“
mit Namen „printversion_content.css“. Eine eigene CSS Datei ist nicht unbedingt
notwendig, es kann aber bei manchen Seiten mit Bildern notwendig sein um das
Aussehen der Druckseite an die originale Seite anzupassen.
Beispiel CSS Datei für den Print Link:
|
body { color: black; background-color: rgb(255,255,255); font-size: 100.01%; font-family: Helvetica,Arial,sans-serif; margin: 0; text-align: center; /* Zentrierung im Internet Explorer */ }
div#Page { text-align: left; /* Seiteninhalt wieder links ausrichten */ width: 800px; padding: 0.5em; background-color: rgb(255, 255, 255); }
div#ContentLayer { margin-left: 0px; padding: 0 1em; border: 1px dashed silver; }
div#ContentLayer h1 { font-size: 1.5em; margin: 0 0 1em; }
div#ContentLayer h2 { font-size: 1.2em; margin: 0 0 1em; }
div#ContentLayer p { font-size:1em; margin: 1em 0; } |
5. Um das HTML
Template und das Stylesheet für den Print Link zu übergeben fügen Sie noch folgenden
Code im Setup Bereich zu der „druck=PAGE“ Definition hinzu:
|
… druck = PAGE includeCSS.file = fileadmin/templates/css/printversion_content.css templateFile = fileadmin/templates/html/printversion_content.tmpl … } … |
|
|
|
|
6. Im Setup Bereich geben Sie folgenden Code ein:
|
… # Button für die Funktion Druckversion mi Mehrsprachigkeit temp.printsite = COA temp.printsite { # holt die Domain 10 = TEXT 10.data = getenv:HTTP_HOST # holt die Seiten ID 20 = TEXT 20.field = uid # holt aktuellen Sprachcode 30 = TEXT 30.data = GP:L # setzt die Texte zusammen 10.wrap = <a href="http://| 20.wrap = ?id=|&type=98 30.wrap = &L=|" target="_blank"><img src="fileadmin/templates/images/icons/document-print.png" alt="Drucken" border=0></a> } … # Zusammenfassung aller Buttons in einen Objekt temp.function = COA temp.function { 1 < temp.gotop 2 < temp.printsite } ... temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY … # Setze in den Marker ###function### die Funktions Button subparts.function < temp.function … |
Für die Mehrsprachigkeit wurde der Parameter „L“ schon eingebaut den „alt=“ Text wird aber mit diesen Script immer in der gleiche Sprache angezeigt.
9. Setzen Sie die
Berechtigung auf das Template Verzeichnis (wenn nicht schon geschehen) und auf
die Template Datei wie folgt:
SLES 11 :# chmod 770 /srv/www/htdocs/cms/fileadmin/templates
SLES 11 :# chmod –r 660 /srv/www/htdocs/cms/fileadmin/templates/html/
SLES 11 :# chmod –r 660 /srv/www/htdocs/cms/fileadmin/templates/css/
Dieses Beispiel verwendet nur ein CSS Stylesheet für die Printausgabe. Es wird kein Plugin oder HTML Template benötigt.
1. Erstellen Sie
folgendes Script im Setup Bereich des Root-Templates einfügen:
|
… PRINT = TEXT PRINT.typolink { value = drucken parameter.data = page:uid additionalParams = &print=1 target = _new } … |
2. Fügen Sie jetzt eine zusätzliche CSS Datei für die Printversion ein:
|
… page.includeCSS { file1.media = screen … file2 = fileadmin/templates/css/print.css file2 { title = Druckversion media = print } … |
3. Und jetzt wird noch Bedingung für den Aufruf eingebaut:
|
… # Standard CSS Datei - wird ggf. überschrieben page.includeCSS.file1 = fileadmin/templates/css/style.css [globalVar = GP:print=1] # Wenn &print=1 an die Adresse angehängt wird, wird daPrint.css page.includeCSS.file1 = fileadmin/templates/css/print.css [global] … |
4. Jetzt können Sie noch den Printlink auf Ihrer Website wie im vorhergehen Kapitel bei „type=98“ einbauen. Nur wird anstatt „type=98“ der Text „print=1“ verwendet.
Anpassung vom Template damit die „Alt“ Texte im Link mehrsprachig dargestellt werden.
1. Änderungen im Constants Bereich. Es werden in der Sprachweiche die entprechden Texte für den „alt“-Text des Links als Template Variablen angelegt.
|
…
printbtn = Drucken # English
language, sys_language.uid = 1 # Espanol
language, , sys_language.uid = 2 |
2. Änderungen im Setup Bereich.
|
… # Button für Druckversion temp.print = TEXT temp.print { field = uid wrap = <a href=”index.php?id=|&type=98“ target=“_blank“><img src="fileadmin/templates/images/icons/print.png" alt="{$printbtn}" border=0></a> } … |

Ursache:
In TYPO3 Template wird noch ein noch ein altes statisches Template „plugin.alt.print (98)“ durch den Parameter „type=98“ angesprochen. Bei den neuen TYPO3 Versionen (ab 4.4) sind keine statischen Template („Include Static:“) mehr vorhanden daher gibt es das statische Template „plugin.alt.print (98)“ und den Parameter „type=98“ nicht mehr.
Abhilfe:
Bei den neuen TYPO3 Versionen sind keine statischen Template mehr vorhanden. Der Parameter „type=98“ muss im TYPO3 Template selbst definiert werden. Sie können aber den Printlink aber auch auf einen eignen Parameter z.B. „print=1“ umstellen.
Zur Umsetzung verfolgen Sie die vorherigen Kapitle zur Erstellung eines Printlinks.

Ursache :
Sie haben bei der Printlink Definition für den „type=98“ keine Inhalt angegeben oder die Übergabe des Inhaltes ist fehlerhaft
Abhilfe :
Fügen Sie folgende Zeilen im Setup Bereich des Root-Templates zur „print = PAGE“ Definition hinzu.
|
… print = PAGE … … |
Ursache :
Sie haben wahrscheinlich das HTML-Template für den Printlink nicht erstellt oder der Pfad auf das HTML-Template ist falsch.
Abhilfe :
Die Datei für das Template befindet sich im Verzeichnis „typo3/sysext/cms/tslib/media/scripts/printversion_content.tmpl“ kopieren Sie von dort die Datei „printlink_content.tmpl“ in das Verzeichnis „fileadmin/templates“.
Verweisen Sie im „Constants“ Bereich des Root-Template aus
dieser Datei:
|
# Konfigurationseinstellungen für plugin.alt.print plugin.alt.print.file.template = fileadmin/templates/html/printversion_content.tmpl |
Kontrollieren Sie auch die Berechtigungen auf die HTML-Template Datei normalerweise reichen „rw“ für Den Benutzer und die Gruppe aus. Außerdem benötigt auch das Verzeichnis Template benötigt „rwx“ für den Benutzer und die Gruppe.
Wenn Sie den Pfad kontrollieren wollen so setzen Sie Berechtigung auf die Datei für alle auf Benutzer auf „r“ mit:
„chmod o+r /srv/www/htdocs/cms/fileadmin/templates/html/printversion_content.tmpl“.
Kontrollieren Sie die Pfadeingabe auf Fehler indem sie das Template direkt über den URL aufrufen: http://www.company.com/ fileadmin/templates/html/printversion_content.tmpl
Bei Aufruf der Druckversion erscheint folgender Fehler: „no new_id given“.
Abhilfe:
Bei Verwendung von RealURL geben Sie folgendes in Ihr Root-Template ein:
|
… # Button für Druckversion temp.print = COA temp.print { # holt die Domain 1 = TEXT 1.data = getenv:HTTP_HOST # holt den kompletten Pfad 2= TEXT 2.data = getenv:REQUEST_URI 2.wrap = |? # setzt die Texte zusammen 1.wrap = <a href="http://| 2.wrap = |?type=98" target="_blank"><img src="fileadmin/templates/images/icons/print.png" alt="Drucken" border=0></a> } … # Zusammefassung aller Buttons in einen Objekt temp.function = COA temp.function { 1 < temp.gotop 2 < temp.printsite } … # Zuweisung der Objekt zum mainTemplate der Seite temp.mainTemplate = TEMPLATE temp.mainTemplate { … # Setze in den Marker ###function### die Funktions Button subparts.function < temp.function … } … |
Hinweis Dieser Printlink funktionierte bei mir aber nicht mehr für Mehrsprachige Websites. Wahrscheinlich weil die Auflösung des URL auf den RealURL Namen danach nicht mehr auf den „L“ Parameter reagiert. Ich musste den Link zur Lösung des Problems wieder auf „…index.php?id=..&L=..“ umstellen.
Diese Extension generiert Bilder welche einen verschleiernden Text enthalten welchen der Benutzer dann in ein Formularfeld eingeben muss um Zugang zu den Webservice zu erhalten. Bei dieser Technik wird davon ausgegangen, dass Menschen diesen Text lesen und eingeben können während ein Spam-Bot (Roboter Skripte um Spam zu erzeugen) dies nicht können. Dies verhindert bei Tip-A-Friend, Gästebüchern und anderen Formularen das Anlegen von Spam von nicht menschlichen Benutzern.
Diese Technik wird diskutiert unter: http://en.wikipedia.org/wiki/Captcha
Diese „Captcha“ Extension wird als Dienst von anderen TYPO3 Extension verwendet. Durch die Verwendung von Captcha wird die Sicherheit der Website erhöht.
1. Installieren Sie
die „captcha“ Extension aus dem Online Repository.
2. Konfigurieren
Sie die Captcha Extension:
|
When set the captcha will get generated using TTF font rendering functions which will result in much more readable captchas Use TTF[useTTF] þ
The width of the captcha image Image width[imgWidth] = 95
The height of the captcha image Image height[imgHeight] = 25
The number of characters of which the captcha consists Captcha chars[captchaChars] = 5
No digits (0-9) will get used for the captcha string No numbers[noNumbers] = ¨
When set the text of the captcha will be somewhat bold Bold text[bold] = ¨
No lowercase characters (a-z) will get used for the captcha string No lowercase characters[noLower] = ¨
No uppercase characters (a-z) will get used for the captcha string No uppercase characters[noUpper] = ¨
The number of pixels between the start of each character (or their distance when in TTF mode, should be 4-6 in TTF mode) Letter spacing[letterSpacing] = 16
The angle in degree which each letter is rotate maximally clock-, or counterclock-wise Angle[angle] = 20
The number of pixels which each letter is maximally shifted to the left or right X Difference[diffx] = 0
The number of pixels which each letter is maximally shifted up or down Y Difference[diffy] = 2
The numer of pixels which the first character is away from the top left corner in horizontal direction X Offset[xpos] = 3
The numer of pixels which the first character is away from the top left corner in vertical direction Y Offset[ypos] = 4
How many 'obfuscating' ellipses are drawn onto the background of the image Noises[noises] = 6
The background color for the captcha Background color[backcolor] = #f4f4f4
The text color for the captcha Text color[textcolor] = #000000
The color of the obfuscating ellipses Obfuscation color[obfusccolor] = #c0c0c0
The font size in pixels (Just for TTF mode) Font size[fontSize] = 16
The font file to use in TTF mode (relative to the root of the TYPO3 installation) Font file[fontFile] =
All characters listed here will not get used for the captcha Exclude chars[excludeChars] = gijloGIJLO0169 |
3. Klicken Sie auf
„Update“ um Ihre Änderungen zu übernehmen
4. Installieren Sie
jetzt die „captcha“ Extension.
5. Setzen Sie die
Berechtigungen auf das Extension Verzeichnis „captcha“ auf:
SLES 11 :# chmod –R 770 /srv/www/htdocs/cms/typo3conf/ext/captcha

Ursache:
Wenn Captcha mit http://www.company.com/typo3conf/ext/captcha/captcha/captcha.php direkt aufgerufen wird kommt folgende Ausgabe:
|
Die Grafik "http://www.realpowerwork.com/typo3conf/ext/captcha/captcha/captcha.php" kann nicht angezeigt werden, weil sie Fehler enthält. |
oder
|
Notice: Use of undefined constant PATH_this - assumed 'PATH_this' in /srv/www/htdocs/rpw/typo3conf/ext/captcha/captcha/captcha.php on line 39
|
Die obige Ausgabe ist nicht vollständig. Alternativ könnte die Ausgabe auch in einen IFrame erfolgen. Dazu die „typo3conf/ext/captcha/captcha/captcha.php“ ändern:
|
… //$captchaHTMLoutput = t3lib_extMgm::isLoaded('captcha') ? '<img src="'.t3lib_extMgm::siteRelPath('captcha').'captcha/captcha.php" alt="" />' : ''; $captchaHTMLoutput = '<iframe width="500" height="100" src="'.t3lib_extMgm::siteRelPath('captcha').'captcha/captcha.php" alt="" ></iframe>'; … |
Die Extension Captcha in der Version 1.1.1 ist nicht voll kompatibel mit PHP 5 daher wird hier eine Liste von Warnungen ausgegeben. Dies erfolgt aber nur wenn in Ihrer „/etc/php5/apache2/php.ini“ die Option „display_error = On“ eingestellt ist.
Abhilfe:
Stellen Sie in der Datei „/etc/php5/apache2/php.ini“ die Option „display_error = Off“ ein und starten Sie den Apache Server mit „rcapache2 restart“ neu.
Als Alternative können Sie auch in der Datei „captcha.php“ das Error Reporting ausschalten:
|
/** * [CLASS/FUNCTION INDEX of SCRIPT] */
ini_set('error_reporting','0');
session_start(); … |
Ist eine Alternative zu der Extension „Captcha“, mit Ähnlichen Funktionen. Je nach Extension in welchen die Captcha-Funktion verwendet wird, kann entweder die „captcha“, oder die „sr_freecap“, oder auch beide unterstützt werden. Ich erwähne die Extension nur der Vollständigkeit halber, denn ich würde die Verwendung der „captcha“ Extension empfehlen.
Bei mir machte die Installation der neuesten Version (1.2.2) von „sr_freecap“ auf einem Provider Server Probleme. Es kam dabei immer zu einem Memory
Siehe dazu auch „Memory Limit über Datei „.htaccess“ erweitern“ weiter unten.
|
Fatal error: Allowed memory size of 32505856 bytes exhausted (tried to allocate 11290130 bytes) in /home/.sites/36/site228/web/typo3/mod/tools/em/class.em_terconnection.php on line 160 |
Hinweis Ich habe dann eine ältere Version der Extension z.B. 0.4.6 zu verwenden. Doch das Ergebnis war eher bescheiden. Die Buchstaben im erzeugten Captcha waren nicht zu lesen oder rutschen aus dem Grafikbereich hinaus. Ich stieg dann wider auf die „captcha“ Extension um.
1. Extension wurde Down geladen und Lokal installiert.
2. Im der Template Datei für das „ve_guestbook“ (ve_guestbook.tmpl) wird das Captcha dann folgenderweise eingebaut (leider noch Tabellenformatiert):
|
<td valign="top">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></td> <td><textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="8" cols="25">###VALUE_ENTRY###</textarea></td> </tr>
<!-- ###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <tr> <div class="tx-guestbook-field"> <td><label for="capture">###FORM_CAPTCHA_RESPONSE### <span class="tx-guestbook-form-obligationfield">*</span><br />###CAPTCHA_IMAGE###</label></td> <td><input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" value="" id="capture" /></td> </div> </tr> <!-- ###CAPTCHA_INSERT### -->
<!-- ###SR_FREECAP_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <tr> <div class="tx-guestbook-field"> <td><label for="freecap">###SR_FREECAP_NOTICE### <span class="tx-guestbook-form-obligationfield">*</span><br /><span class="freecap-span">###SR_FREECAP_CANT_READ###</span></label></td> <td>###SR_FREECAP_IMAGE### <input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" id="freecap" /></td> </div> </tr> <!-- ###SR_FREECAP_INSERT### -->
<tr> <td> </td> <td><input type="hidden" name="id" value="###PID###" /><input type="hidden" name="tx_veguestbook_pi1[submitted]" value="1" /><input type="submit" value="###FORM_SUBMIT###" /></td> </tr> |
3. Legen Sie eine
neue Seite zur Anlage neuer Gästebucheinträge z.B. mit den Namen „Formular“ an.
4. Erstellen Sie
ein neues Inhaltselement. Als Plugin für das neue Inhaltselement wird „Gästebuch“
ausgewählt.
5. Damit das
Formular die Extension „sr_freecap“ auch benutzt muss man auf der Formularseite
„FORM“ im Reiter „Plugin“ die entsprechende Captcha Extension auswählen.

6. Mit folgenden
Einträgen im Setup Bereich könnte die Größe und das Aussehen der Captcha
beeinflusst werden:
|
########## Captcha (sr_freecap) ############# plugin.tx_srfreecap_pi1 { morphFactor = 0.1 #lt. Manual sind Werte über über 1 unleserlich } # Sektion um den angezeigten Text zu formatieren plugin.tx_srfreecap_pi2 { salutation = {$plugin.tx_srfreecap.salutation}
_CSS_DEFAULT_STYLE ( .tx-srfreecap-pi2-image { margin-left: 1em; } .tx-srfreecap-pi2-cant-read { font-size: .9em; color:#3500aa; } .tx-srfreecap-pi2-cant-read a:link { background-color:transparent; font-weight:bold; text-decoration:none;color:#ff0000; } ) } |
Nachdem auch noch „imageHeight=30“ einbauen wollte, rutschten alle erzeugten Wörtern beim Captcha aus den Grafikfenster hinaus.
Mit dem Eintrag „useWordsList = 0“ sollte, die Anzeige besser werden nur werden dann keine Worte sondern wilde Buchstabenkombinationen angezeigt.
Folgender Eintrag wurde in die Datei „.htaccess“
vorgenommen:
|
… php_value memory_limit 64M … |
Bei mir führte der Versuch das Memory Limit über die Datei
„.htaccess“ zu erweitern zur folgenden Fehlermeldung und die Seite konnte im FE
und im BE nicht mehr aufgerufen werden:
|
Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator, admin and inform them of the time the error occurred, and anything you might have done that may have caused the error. More information about this error may be available in the server error log. Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
|
Abhilfe:
Einzige Möglichkeit war den Eintrag aus der „.htaccess“ Datei wieder zu entfernen.
Mit dieser Extension können Gäste der Website die angezeigte Seite per Email weiterempfehlen. Das Email wird dabei vom Server versendet und es dazu auf dem Gast PC kein Email Programm notwendig.
1. Extension Tip-A-Friend (tipafriend) installieren.
2. Kopieren Sie aus dem Verzeichnis „/typo3conf/ext/tipafriend/pi/“ die Template Datei „tipafriend_de.tmpl“ in das Verzeichnis „/fileadmin/templates/html“. Ändern Sie die HTML Template Datei nach Ihren Bedürfnissen ab. Je nach Sprache sollten Sie die Endung vor dem Punkt auf den Ländercode ändern und die enthaltenen Texte entsprechend anpassen.
3. Je nach
Konfiguration und Struktur Ihrer Templates ist die Einstellung für Tip-A-Friend
im jeweiligen Bereich des Root oder Subtemplates einzutragen.
4. Einstellungen für Tip-A-Friend im Template Constant Bereich:
|
… # Konfigurationseinstellungen für plugin.tipafriend # Default HTML Template festlegen plugin.tipafriend.file.templateFile = fileadmin/templates/html/tipafriend_de.tmpl # ID der Seite wo das Plugin "Tip geben" eingebunden wurde plugin.tipafriend.PIDtipForm = 40 # Maximale Breite des Formularesfestlegen plugin.tipafriend.MaxW = 200 # Farbeinstellungen des Formulars plugin.tipafriend.color1 = #FFFFFF plugin.tipafriend.color2 = #FFFFFF plugin.tipafriend.color3 = #CCCCCC # HTML eMail Versand aktivieren plugin.tipafriend.htmlMail = 1 … |
Sie sollten das Template nicht Im Menü „Template“ – „Constant Editor“ unter „PLUGIN.TIPAFRIEND (8)“ eingeben. Da dadurch das Template in den Ressourcen Bereich des Templates kopiert wird. Dies würde zwar genauso Funktionieren, aber Sie müssen bei jeder Änderung am Template, das vorhandene Template im Ressourcen Bereich löschen und das neue wieder hinzufügen. Der Übersicht halber wird auch die „PID for the Tip-form page“ (plugin.tipafriend.PIDtipForm) die die ID der vorher erstellten Seite darstellt nicht im Constant Editor sondern im Constant Bereich eingegeben.
4.
Die weitere Anleitung geht davon aus, dass in Ihrem HTML Template
ein Marker mit der Bezeichnung „tip“ vorhanden ist. Ansonsten müssen Sie den
folgenden Code entsprechend Ihren Bedürfnissen abändern.
Binden Sie den Aufruf des Plug-Ins in Ihr Root-Template mit folgenden Code ein:
|
… # Button für die Funktion Tip-A-Friend temp.tipafriend = COA temp.tipafriend { wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a> # holt die Domain 10 = TEXT 10.data = getenv:HTTP_HOST # holt den kompletten Pfad 20 = TEXT 20.data = getenv:REQUEST_URI 20.rawUrlEncode = 1 30 = TEXT 30.data = GP:L # setzt die Texte zusammen 10.wrap = &tipUrl=http://| 20.wrap = | 30.wrap = &L=| } … # Zusammefassung aller Buttons in einen Objekt temp.function = COA temp.function { 1 < temp.gotop 2 < temp.printsite 3 < temp.tipafriend } … # Zuweisung der Objekt zum mainTemplate der Seite temp.mainTemplate = TEMPLATE temp.mainTemplate { … # Setze in den Marker ###function### die Funktions Button subparts.function < temp.function … } … |
Eine weitere Möglichkeit der Definition von Tip-A-Friend im Setup Bereich. Damit könnte die Extension direkt einen „subparts“ zugwiesen werden:
|
… # TIP A FRIEND temp.tipafriend = USER temp.tipafriend { userFunc = tx_tipafriend->main_tipafriend code = TIPLINK templateFile = {$plugin.tipafriend.file.templateFile} typolink.target = _self typolink.parameter = 62 } … #displaying the tip-link subparts.tip= TEXT subparts.tip< temp.tipafriend … |
Die Punkte „…“ in der Übergabe in das Template sind Platzhalter für schon
vorhandenen Code. Den „typolink.parameter“ müssen Sie entsprechend Ihrer ID
ändern.
5.
Fügen Sie im Template unter „Click here to edit
the whole template“ bei „Include static:“ das Objekt „plugin.tipafriend” hinzu.
6.
Erstellen Sie eine neue Seite (Standard). Erstellen Sie mit
„Seiteninhalt anlegen“ (englisch „Create Page Content“ den Inhalt als „General
Plugin“. Wählen Sie unter Plugin „Tipp geben“ aus. Geben Sie als CODE:
„TIPFORM“ ein.
7.
Die Funktionalität von Tip-A-Friend sollten Sie jetzt schon
testen können.
8. Sie können jetzt noch durch Formatierungen des HTML Template und der zugehörigen CSS Datei Designanpassungen der Tip-A-Friend Extension vornehmen.
Bei der Erzeugung des „COA“ Objektes für den Link von Tip-A-Friend wurde schon die Mehrsprachigkeit berücksichtigt. Sie müssen aber jetzt noch sicherstellen, dass immer das jeweilige HTML-Template nach der Sprache ausgewählt wird:
|
#config.sys_language_mode = content_fallback; 1,0 [globalVar = GP:L = 0] config { … } … # Templates auf Sprache Deutsch wechseln plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_de.tmpl … [global]
# English language, sys_language.uid = 1 [globalVar = GP:L = 1] config { … } … # Templates auf Sprache Englisch wechseln plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_en.tmpl … [global]
# Espanol language [globalVar = GP:L = 4] config { … } … # Templates auf Sprache Spanisch wechseln plugin.tipafriend.templateFile = fileadmin/templates/html/tipafriend_es.tmpl … [global] |
Es erscheint die Fehlermeldung „The page is not configured! [type= 0][]“

Ursache:
Dieser Fehler hatte nicht direkt mit der Extension „tipafriend“ zu tun. Wurde aber ausgelöst als eine zusätzliche Sprachweiche für den Wechsel des HTML-Templates je nach Sprache eingebaut wurde.
Abhilfe:
Erstellen Sie den Wechsel der HTML-Templates für die verschieden Sprachen in den schon vorhandenen Sprachdefinitionen.
Bei Aufruf von Tip-A-Friend wird bei Seiten, welche die Extension „tt_news“ oder „tt_products“, verwenden nicht der korrekte URL zum übergeben. Es darf hier nicht mehr nur die ID der Seite im Link übergeben werden, sondern es muss der komplette URL (RealURL) inklusive der GET Parameter gesetzt werden.
Abhilfe:
Bei Verwendung von RealURL geben Sie folgendes in Ihr Root-Template ein:
|
… # Button für die Funktion Tip-A-Friend temp.tipafriend = COA temp.tipafriend { wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a> # holt die Domain 10 = TEXT 1.data = getenv:HTTP_HOST # holt den kompletten Pfad 20 = TEXT 20.data = getenv:REQUEST_URI 20.rawUrlEncode = 1 30 = TEXT 30.data = GP:L # setzt die Texte zusammen 10.wrap = &tipUrl=http://| 20.wrap = | 30.wrap = &L=| } … |
oder den Button so erstellen:
|
… # Button für die Funktion Tip-A-Friend temp.tipafriend = COA temp.tipafriend { wrap = <a href="index.php?id=40|" class="tip"><img src="fileadmin/templates/images/icons/button_send.gif" alt="als Email senden" border=0></a> # holt den kompletten URL inkl. http:// 10 = TEXT 10.data = getIndpEnv: TYPO3_REQUEST_URL 20 = TEXT 20.data = GP:L # Url Encode wird benötigt damit die komplette Parameterliste übergeben wird. 10.rawUrlEncode = 1 10.wrap = &tipUrl=| 20.wrap = &L=| } … |
|
|

Abhilfe:
Verwenden Sie im HTML Template anstatt des Markers „###URL_SPECIALCHARS###“ den Marker „###URL_DISPLAY###“. Bei diesem Marker werden URL die Länger als 70 Zeichen sind auf die ersten und letzten 30 Zeichen gekürzt.
Manche Bilder werden beim Versand als HTML Email nur mit dem Rahmen angezeigt.
Ursache:
Noch nicht ermittelt
|
Feb 8 09:32:15 www3 postfix/pickup[12297]: 7CBC46B8147: uid=65534 from=<nobody> Feb 8 09:32:15 www3 postfix/cleanup[12519]: 7CBC46B8147: message-id=<20060208083214.7CBC46B8147@www3.company.com> Feb 8 09:32:15 www3 postfix/qmgr[16975]: 7CBC46B8147: from=<nobody@www3.company.com>, size=499, nrcpt=1 (queue active) Feb 8 09:32:15 www3 postfix/smtp[12520]: 7CBC46B8147: to=<test@chello.at>, relay=smtpgate.chello.at[213.46.255.2], delay=1, status=bounced (host smtpgate.chello.at[213.46.255.2] said: 553 www3.company.com does not exist (in reply to MAIL FROM command)) Feb 8 09:32:15 www3 postfix/cleanup[12519]: DA4C36B8124: message-id=<20060208083215.DA4C36B8124@www3.Homepage.com> Feb 8 09:32:15 www3 postfix/qmgr[16975]: DA4C36B8124: from=<>, size=2315, nrcpt=1 (queue active) Feb 8 09:32:15 www3 postfix/qmgr[16975]: 7CBC46B8147: removed Feb 8 09:32:15 www3 postfix/local[12522]: DA4C36B8124: to=<root@www3.company.com>, orig_to=<nobody@www3.company.com>, relay=local, delay=0, status=sent (delivered to mailbox) Feb 8 09:32:15 www3 postfix/qmgr[16975]: DA4C36B8124: removed |
Ursache:
Ich vermute, dass dies durch den nicht registrierten DNS Namen meines Servers zustande kommt. Sehr viele Firmen verwenden schon Spam-Filter die nur E-Mails von registrierten SMTP Servern zulassen.
Damit können die normalerweise dynamisch generierten URL in TYPO3 durch statische URL ersetzt werden. Die dynamisch generierten URL haben den Nachteil, dass Sie von den meisten Suchmaschinen nicht erfasst werden.
Wir werden hier im nachfolgenden zuerst das „mod_rewrite“ Modul alleine (Rewrite URL) und danach mit der Extension „realurl“ (Real URL) verwenden.
Einige Beispiele von Umsetzungen auf statische URL:
TYPO3 URL: http://www.company.com/index.php?id=12
Rewrite URL: http://www.company.com/cms/Produkte.12.0.html
Real URL: http://www.company.com/cms/produkte/produktinfos/
TYPO3 URL: http://www.company.com/index.php?id=12
Rewrite URL: http://www.company.com/cms/Produktansicht.38.0.html?&backPID=12&tt_products=6
Real URL: http://www.company.com/cms/produkte/produktinfos/produktansicht/?&backPID=12&tt_products=6
Grundsätzlich wird über “mod_rewrite” die Seite nicht wirklich als statische Seite angelegt. Sondern es wird nur intern der angezeigte oder eingegeben URL im Browser über das Module „mod_rewrite“ auf den TYPO3 URL umgeschrieben.
Verwechseln Sie daher „mod_rewrite“ für die Umschreibung von
URL nicht mit dem Anlegen von physikalischen statischen Seiten in Ihren TYPO3
Verzeichnis. Sie können nämlich in Verbindung mit „mod_rewrite“ und dem Admin
Panel über den Menüpunkt „veröffentlichen“ statische Seiten in Ihrem TYPO3
Verzeichnis erzeugen. Dies wird hier nur zum besseren Verständnis erklärt, für
die Umsetzung dynamischer auf statische URL werden keine statischen Seiten
benötigt.
Für die Anlage von statischen Seiten, folgende Einträge in Ihre
„/typo3conf/localconf.php“ vornehmen:
|
$TYPO3_CONF_VARS[„FE“][„simulateStaticDocuments“] = „1“; $TYPO3_CONF_VARS[„FE“][„publish_dir“] = „./publish/“; |
Der angegeben Verzeichnisname für die statischen Dokumente „publish“ muss manuell in Ihren TYPO3 Verzeichnis angelegt werden.
Zusätzlich wird im Root-Template „mod_rewrite und das AdminPanel aktiviert:
|
config.simulateStaticDocuments = 1 // aktiviert mod_rewrite config.simulateStaticDocuments_NoTypeIfNoTitle = 1 // keine Type Angabe wenn kein Titel vorhanden config.simulateStaticDocuments_addTitle = 20 // Länge vom Titel auf 20 Zeichen begrenzen config.admPanel = 1 // Admin Panel für Frontende aktivieren |
Wenn Sie jetzt im Backend eingeloggt sind und das Frontende öffnen wird das Admin Panel mit dem Menüpunkt „Veröffentlichen“ angezeigt. Durch die Auswahl der „Veröffentlichungsebenen“ und klicken auf „Jetzt veröffentlichen“ können Sie aus allen angezeigten Seiten statische Seiten erzeugen. Die statischen Seiten werden im Verzeichnis „publish“ angelegt.
Wenn Sie diese Funktionalität testen wollen darf die Extension „Real URL“ nicht installiert sein.
1. Apache Server
konfigurieren
Kontrollieren Sie ob „mod_rewrite“ am Apache Server geladen ist mit:
http://localhost/xampp/phpinfo.php
Hinweis Wenn Ihre TYPO3 Site von einem Provider
gehostet wird, müssen Sie eventuell erst das Freischalten der „mod_rewrite“
Funktion für Ihren Hostspace beim Provider beantragen.
2. Kopieren Sie die
„.htaccess“ Datei aus dem Verzeichnis „/typo3conf/ext/realurl/“ in das Root
Verzeichnis Ihrer TYPO3 Installation.
3. Bearbeiten Sie
die Datei, damit sie nachher wie folgt aussieht:
|
RewriteEngine On RewriteRule ^typo3$ - [L] RewriteRule ^typo3/.*$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* index.php |
4. Root-Template
for Real URL modifizieren
|
# configure mod_rewrite config.simulateStaticDocuments = 1 config.simulateStaticDocuments_noTypeIfNoTitle = 1 config.simulateStaticDocuments _addTitle = 20 |
Wenn Sie jetzt die TYPO3 Seite für Produkte öffnen wird z.B.
folgendes angezeigt:
http://www.company.com/cms/Produkte.12.0.html
oder bei einer Produkteinzelansicht
http://www.company.com/cms/Produktansicht.38.0.html?&backPID=12&tt_products=6
Die angezeigte Nummer nach „products“ ist von der TYPO3 Seiten ID abhängig.

Nach Update vom Repository kann die Website nicht mehr angezeigt werden und es erscheint immer ein Serverfehler. Es kann das Backend und auch das „Install Tool“ nicht mehr geöffnet werden.
Ursache:
In der Apache Error-Log-Datei wird folgendes Eingetragen beim Zugriff auf die Website

Es besteht ein Fehler in der Apache „RewriteEngine“ oder im Module „mod_rewrite“.
Abhilfe:
Installieren Sie die das PHP Module „mod_rewrite“ nochmals neu.

Abhilfe:
Fehler in der „.htaccess“ Datei in eine „RewriteRule“. Kontrollieren Sie nochmals alle „RewriteRules“ die Sie eingetragen haben. Verwenden Sie für Testzwecke nur eine mit folgenden Inhalt „RewriteRule ^[^/]*/.html$ index.php“.
Schalten Sie das Log von „mod_rewrite“ mit folgenden Zeilen im „http.conf“ ein:
|
RewriteLog /var/log/apache/rewrite.log RewriteLogLevel 9 |
Wenn das Verzeichnis “apache” im Verzeichnis “/var/log” nicht vorhanden ist legen Sie es an mit “mkdir /var/log/apache”.
Starten nachdem Sie die Zeilen eingetragen haben den Apache Server neu.
Nach Neustarten des Servers sollte die „rewrite.log“ Datei erstellt worden sein.

Abhilfe:
Kontrollieren Sie Ihre Einstellungen in der „.htaccess“ Datei. Eventuell haben Sie eine falsche Pfadangabe bei „RewriteBase“.

Abhilfe:
Eventuell haben Sie zuvor die Extension „Real URL“ installiert. Deinstallieren Sie die Extension „Real URL“ wieder.
Diese Extension unterstützt die automatische Umsetzung von URLs mit GET Parametern im Frontend (gleich “index.php?id=123&type=0&L=1“) in einen virtuellen Pfad, den sogenannten „Speaking URL“ (gleich „de/kontakt/firmeninfo/page.html“) und wieder zurück. Die dabei erzeugten URL sollen so leicht wie möglich lesbar sein.
Die Extension ist sehr flexible und unterstützt eine einfache Umsetzung von Seiten IDs bis zu komplexen Umsetzung einer Kombination von GET Parametern
|
EingabeURL |
TYPO3 ID und Type |
|
http://www.domain.com/ |
id=0, type=0 |
|
http://www.domain.com/products/product1/features/ |
id=123, type=0 |
|
http://www.domain.com/products/product1/features/leftframe.html |
id=123, type=2 |
TYPO3 arbeitet mit Seiten IDs. Das funktioniert hervorragend wenn auch die URL sehr hässlich sind ("...index.php?id=123&type=0&L=1...." etc.). Es gibt Workarounds (simulateStaticDocuments), aber dies ist nur eine bedingte Lösung den die ID muss weiterhin im unterstütztem URL vorhanden sein, was nicht gewünscht ist. Zusätzlich wird nur der Seitentitel angezeigt und nicht der komplette Pfad (oder die sog. 'rootline') zu der Seite.
Normalerweise geben Sie den Pfad und den Dateinamen von dem Dokument ein, aber TYPO3 arbeitet ausschließlich mit dem IDs. Die RealURL Extension erlaubt eine Umsetzung von Seiten-IDs und (virtuellen URLs) welche leicht zu lesen und leicht zu merken sind.
Die Extension braucht für diese Funktion das Apache Modul „mod_rewrite“ um die virtuellen URLs von der Seite in der TYPO3 Frontend Engine umzuschreiben
Normalerweise arbeitet RealURL auch ohne aufwendige Konfiguration, aber Sie haben das Problem das alle Referenzen auf Dateien in der HTML Seite absolute URL sein müssen, oder der <base> Tag muss gesetzt werden. Beide Methoden haben Vorteile und Nachteile, die Erkenntnis daraus ist, dass Sie in Ihren Template und Script Code Anpassungen vornehmen müssen um kompatible zu bleiben.
· Unterstützt verschiedene Methoden für Codieren des Seitenpfades, inklusive Benutzerdefinierter Methoden
· Seitentitel können Leerschritte oder Zeichen wie /.,&@ etc enthalten der URL wird trotzdem in eine sehr einfach lesbare Zeichenfolgen und auf Kleinbuchstaben umgewandelt
· Falls Sie eine Seite umbenennen, kann der alte URL weiterhin benutzt werden (siehe Users Manual). Damit kann diese Seite wenn Sie z.B. von Google indiziert wurde noch immer gefunden werden.
· Bietet eine erweiterte Umsetzung von den meisten gängigen GET Parametern in einen oder von einen virtuell URL.
· Übersetzung zwischen einen GET Abfragestring ("...&tx_myext[blabla]=123&type=2...") und einen virtuellen URL (".../123/2/") ist transparent in TYPO3 und in allen Extension; Die einzige Anforderung ist das die interne TYPO3 Link Erzeugungsfunktion verwendet wird ("tslib_cObj::typolink", "t3lib_tstemplate::linkData").
· URLs können gecached werden, dadurch wird die Umrechnung von URLs auf IDs sehr schnell.
· Es können verschiedene Frames oder auch Seitentypen unterstützt werden.
· Die URLs sind Mehrsprachenfähig (Multilingual). Wenn Sie auf einer mehrsprachigen Seite in Deutsch Browsen werden auch die URLs in Deutsch angezeigt
· Ein einmal konfiguriertes System arbeitet vollständig automatisch. Erzeugt dabei neue URL macht Update von schon vorhandenen URLs.
· Sie können sehr einfach sehen wohin “Shortcuts” zeigen wenn der Ziel URL erzeugt wird, anstatt auf dem URL zu der „Shortcut“ selbst.
· Es werden automatisch mehrere Domains in der Datenbank unterstützt.
· Es werden auch andere Verzeichnisse von TYPO3 Installationen unterstützt als nur das Root Verzeichnis der Webseite.
· Encoding und Decoding von wichtigen Parameter und GET Variablen Namen.
In der aktuellen Version von RealURL haben Sie die Möglichkeit, zwischen einer automatischen Konfiguration und einer manuellen Konfiguration zu wählen. Bei der automatischen Konfiguration erzeugt die Extension RealURL eine Datei „realurl_autoconf.php“ im Verzeichnis „typo3conf“. Bei der manuelle Konfiguration wird der Definitionscode welcher früher in der „localconf.php“ eingetragen wurde, in die Datei „realurl_conf.php“ eingetragen!
Als Voraussetzung damit Sie RealURL verwenden können, muss auf dem Webserver (Apache) das PHP Modul „mod_rewrite“ installiert sein.
1. Zuerst müssen
wird den Apache Server konfigurieren über YaST als zusätzliches Modul das „apache2-worker“
installieren.

2. Kontrollieren
Sie ob „mod_rewrite“ am Apache Server geladen wird. Öffnen Sie ein Konsolen
Fenster und geben Sie „vi /etc/sysconfig/apache2“ ein.
Kontrollieren Sie die Option „APACHE_MODULES“ und geben Sie ggf. wenn dies
nicht vorhanden den Text „rewrite“ ein. Speichern Sie die Datei ab.
|
APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir php5 rewrite" |
Hinweis
Wenn Ihre TYPO3 Site von einem Provider gehostet wird, müssen Sie
eventuell erst das Freischalten der „mod_rewrite“ Funktion für Ihren Hostspace
beantragen.
3. Öffnen Sie jetzt die Konfiguration von Ihren virtuellen Apache Host „/etc/apache2/vhost.d/rpw.conf“ und ändern Sie folgende Zeile ab:
|
<Directory "/srv/www/htdocs/rpw"> … # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride All … </Directory> </VirtualHost> |
Hinweis Ändern Sie den Text „rpw“ so ab, das er dem Pfad Ihrer TYPO3 Installation entspricht.
4. Starten Sie den
Apache Server mit „rcapache2 restart“.
5. Kopieren Sie die
„_.htaccess“ Datei aus dem Verzeichnis „/typo3conf/ext/realurl/“ in das Root
Verzeichnis Ihrer TYPO3 Installation. Bennen Sie die Datei auf „.htaccess“ um.
Folgende Einträge sollten in der Datei vorhanden sein:
|
RewriteEngine On RewriteRule ^typo3$ - [L] RewriteRule ^typo3/.*$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule .* index.php |
Wenn Sie einen Hoster (Provider) für Ihre TYPO3
Installation verwenden, kann es auch notwendig sein, zusätzlich einen Eintrag
„RewriteBase /ihrverzeichnis/“ oder anstatt der „RewriteRule .* index.php“ den
Eintrag „RewriteRule „^[^/]*.html$ index.php“ zu verwenden.
1. Extension
„realurl“ im Extension Manager installieren.
2. Wählen Sie
folgende Einstellungen für die Extension aus.

Hinweis Wenn Sie die Option „Enable automatic
configuration“ auswählen brauchen Sie sich keine „realurl_conf.php“ im
„typo3conf“ Verzeichnis anlegen, sondern TYPO3 erzeugt automatisch eine Datei
mit dem Namen „realurl_autoconf.php“ in diesem Verzeichnis. Der Nachteil dabei
ist nur, dass die Sprachumschaltung immer noch über „L=“ Suffix durchgeführt
wird.
3. Root-Template
for Real URL modifizieren
|
… # configure real url extension config.simulateStaticDocuments = 0 config.baseURL = http://www.realpowerwork.com/ config.tx_realurl_enable = 1 … |
WICHTIG Die Option "simulateStaticDocuments" muss abgeschaltet sein (=0). Den Host und Domänennamen ersetzne Sie durh Ihre Domäne. Achten Sie auf den abschließenden Schrägstrich „/“ beim URL.
Hinweis Für manche Extensions sind noch zusätzliche Anpassungen für die richtige Funktion von „RealURL“ erforderlich. Sehen Sie dazu genauers in den Beschreibungen zu den jeweiligen Extensions.
4. Die Einrichtung von “Real URL” ist damit abgeschlossen. Sie können jetzt die TYPO3 Seiten mit Ihren Namen aufrufen. Die Sprachumschaltung erfolgt noch mit „L=“.
Durch die Verwendung einer eigenen Konfigurationsdatei für RealURL können Sie die Funktionaltät der URL-Umsetzung feiner Steuern, oder gewisse Funktionaltäten überhaupt erst verwenden. Einse dieser Funktionaltäten wäre die Sprachumsetzung vom Suffix „L=“ auf ein Sprachkürzel wie „/de“, „/en/“, „es“, etc.
1. Erstellen Sie
einen neue Datei mit dem Namen „realurl_conf.php“ im Verzeichnis „typo3conf“
mit folgenden Inhalt:
|
<?php $TYPO3_CONF_VARS['FE']['addRootLineFields'].= ',tx_realurl_pathsegment'; $TYPO3_CONF_VARS['EXTCONF']['realurl'] = array( '_DEFAULT' => array( 'init' => array( 'enableCHashCache' => 1, 'appendMissingSlash' => 'ifNotFile', 'enableUrlDecodeCache' => 1, 'enableUrlEncodeCache' => 1, 'postVarSet_failureMode' => '', ), 'redirects' => array(), 'preVars' => array( array( 'GETvar' => 'no_cache', 'valueMap' => array( 'nc' => 1, ), 'noMatch' => 'bypass', ), array( 'GETvar' => 'L', 'valueMap' => array( 'de' => '0', 'en' => '1', 'es' => '4', ), 'valueDefault' => 'de', 'noMatch' => 'bypass', ), ), 'pagePath' => array( 'type' => 'user', 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', 'spaceCharacter' => '-', 'languageGetVar' => 'L', 'expireDays' => 1, 'rootpage_id' => 1, 'firstHitPathCache' => 1, 'autoUpdatePathCache' => '1', ), 'fixedPostVars' => array(), 'postVarSets' => array( '_DEFAULT' => array( // news archive parameters 'archive' => array( array( 'GETvar' => 'tx_ttnews[year]' , ), array( 'GETvar' => 'tx_ttnews[month]' , 'valueMap' => array( 'january' => '01', 'february' => '02', 'march' => '03', 'april' => '04', 'may' => '05', 'june' => '06', 'july' => '07', 'august' => '08', 'september' => '09', 'october' => '10', 'november' => '11', 'december' => '12', ) ), ), // news pagebrowser 'browse' => array( array( 'GETvar' => 'tx_ttnews[pointer]', ), ), // news categories 'select_category' => array ( array( 'GETvar' => 'tx_ttnews[cat]', ), ), // news articles anMd searchwords 'article' => array( array( 'GETvar' => 'tx_ttnews[tt_news]', 'lookUpTable' => array( 'table' => 'tt_news', 'id_field' => 'uid', 'alias_field' => 'title', 'addWhereClause' => ' AND NOT deleted', 'useUniqueCache' => 1, 'useUniqueCache_conf' => array( 'strtolower' => 1, 'spaceCharacter' => '-', ), ), ), array( 'GETvar' => 'tx_ttnews[backPid]', ), array( 'GETvar' => 'tx_ttnews[swords]', ), ), ), ), // configure filenames for different pagetypes 'fileName' => array( 'defaultToHTMLsuffixOnPrev' => 1, 'index' => array( 'print.html' => array( 'keyValues' => array( 'type' => 98, ), ), 'rss.xml' => array( 'keyValues' => array( 'type' => 100, ), ), 'rss091.xml' => array( 'keyValues' => array( 'type' => 101, ), ), 'rdf.xml' => array( 'keyValues' => array( 'type' => 102, ), ), 'atom.xml' => array( 'keyValues' => array( 'type' => 103, ), ), ), ), ), ); ?> |
Der Eintrag 'defaultToHTMLsuffixOnPrev' => 1 simuliert eine statische HTML-Seite am Ende des URLs, ansonsten werden nur Pfade im URL erzeugt.
WICHTIG Ändern Sie
auf alle Fälle die ID des Parameter “rootpage_id” auf die ID Ihrer Root-Seite.
Führen Sie zusätzlich noch die Anpassung der “getVar” für “L” durch, damit die
Sprachindexe zu Ihrer Installation passen.
2. Im „Extension
Manager“ unter „RealURL“ müssen Sie jetzt noch folgende Einträge durchführen.
Den „Path to configuration file“ auf „typo3conf/realurl_conf.php“ einstellen
und die Option für „Enable automatic configuration“ muss ausgeschaltet werden.

3. Löschen Sir den
Seitencache der Seiten im TYPO3 Backend.
4. Die Einrichtung von “Real URL” ist damit abgeschlossen. Sie können jetzt die TYPO3 Seiten mit Ihren Namen aufrufen.
Hinweis Für manche Extensions sind noch zusätzliche Anpassungen für die richtige Funktion von „RealURL“ erforderlich. Sehen Sie dazu genauers in den Beschreibungen zu den jeweiligen Extensions oder Website http://www.typo3knowledge.ch/category/extensions/realurl-extensions/
Eine zusätzlich zu installierende Extension wäre „jb_realurl_regeneration“. Mit dieser Extension können die Datenbankeinträge für „Real URL“ regeneriert werden. Die ist nach Umbenennungen von Seiten notwendig.

Abhilfe:
Der URL der angezeigt wird http://www.rpw.com/cms/produkte/produktinfos/ scheint richtig zu sein, nur erscheint diese Fehlermeldung. Wenn im URL aber der Eintrag „cms“ verdoppelt wird erscheint die Seite richtig: http://www.rpw.com/cms/cms/produkte/produktinfos/
Wenn die Seite dann funktioniert, legen Sie im Root-Template
folgende Einträge an:
|
config.baseURL = http://www.company.com/typo3verzeichnis/ |
Wobei die Einträge „www.company.com“ durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden. Der Eintrag „config.BaseURL = 1“ ist ab TYPO3 Version 4.1.x nicht mehr notwendig.
Dies kann aber auch an einem falschen Eintrag in Ihrer „realurl_conf.php“. Kontrollieren Sie unter dem Abschnitt „preVars“ ob ein Eintrag ‚type’ => „notfound’ vorhanden ist der diesen Fehler auslöst. Wenn dies der Fall ist ändern Sie den ‚notfound’ auf ‚bypass’.
Immer wenn der Menüpunkt „TYPO3“ oder Untermenü davon aufgerufen werden erscheint wird folgende Fehlermeldung:

Ursache:
Dieser Fehler tritt immer dann auf wenn versucht wird auf den URL http://www.realpowerwork.com/typo3/dokumente.html ohne vorangestellte Sprachkürzel zuzugreifen, d.h. für die deutsche Seite wäre der richtige URL
http://www.realpowerwork.com/de/typo3/dokumente.html
Dies passiert immer dann wenn die Seite zum ersten mal geöffnet wird, und noch keine Sprachumschaltung erfolgt ist. Zusätzlich erfolgt ja für den Text „typo3“ durch das „mod_rewrite“ Modul kein Mapping. Daher lüft die Seite dann auf Fehler.
Abhilfe:
Es muss durch die RealURL Konfiguratinb sichergestellt werden, dass alle Seiten immer das Sprachkürzel erhalten.
Dazu müssen Sie folgende Änderung in der RealURL Konfigurationdatei „realurl_conf.php“ durchführen:
|
…
… |

Abhilfe:
Kontrollieren Sie in Ihrer “realurl_conf.php” ob im Abschnitt “fileName“ der Eintrag:
„defaultToHTMLsuffixOnPrev = 1,“ vorhanden ist. Wenn nicht, erstellen Sie diesen Eintrag.

Abhilfe:
Wenn Sie in der „reaurl_conf.php“ für die Real URL
Einstellungen folgenden Eintrag haben:
“appendMissingSlash = „ifNoFile“ entfernen oder remarken Sie diesen Eintrag und
testen Sie nochmals.
Dies kann auch an einem falschen Eintrag in Ihrer „realurl_conf.php“. Kontrollieren Sie unter dem Abschnitt „preVars“ ob „arrays“, welche nicht aufgelöst werden können, entweder mit einer ’noMatch’ => ‚bypass’ oder mit ‚type’ => ‚bypass’ verlassen werden.
Sie können auch Testweise eine minimal Konfiguration für Real URL in der „realurl_conf.php“ verwenden um den Fehler einzugrenzen:
|
// Configure for Real URL. $TYPO3_CONF_VARS['EXTCONF']['realurl']['_DEFAULT'] = array( 'init' => array( 'enableCHashCache' => 0, ), 'preVars' => array( array( 'GETvar' => 'no_cache', 'valueMap' => array( 'no_cache' => 1, ), 'noMatch' => 'bypass', ), // define language settings array( 'GETvar' => 'L', 'valueMap' => array( 'de' => '0', 'en' => '1', 'es' => '4', ), 'valueDefault' => '0', 'noMatch' => 'bypass', ), ), 'pagePath' => array( 'type' => 'user', 'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main', 'spaceCharacter' => '-', 'languageGetVar' => 'L', 'expireDays' => '3', 'autoUpdatePathCache' => '1', 'rootpage_id' => '1', ), 'fileName' => array( 'defaultToHTMLsuffixOnPrev' => 1, ), ); |

Abhilfe:
Hier wird zusätzlich nochmals „cms“ vor den aufzurufenden URL gesetzt. Unter diesem URL kann die Seite aber nicht gefunden werden. Wenn der Pfad folgenderweise aussehen sollten entfernen Sie aus dem URL den doppelten „cms“ Eintrag und testen Sie, ob die Seite angezeigt wird: http://www.company.com/cms/cms/news-aktuell/aktuelle-meldungen.html.
Wenn die Seite dann funktioniert, legen Sie im Root-Template
folgende Einträge an:
|
config.baseURL = 1 config.baseURL = http://www.company.com/typo3verzeichnis/ |
Wobei die Einträge „www.company.com“ durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden. Achten Sie auch darauf das die den Slash „/“ am Ende des Verzeichnisses angeben.
Es werden alle aufgerufenen Seiten normal angezeigt nur wird im URL folgendes angezeigt:
http://www.rpw.com/cms/cms/produkte/produktinfos/
Abhilfe:
Ihr Base Verzeichnis ist falsch definiert. Legen Sie im Root-Template
folgende Einträge an:
|
config.baseURL = 1 config.baseURL = http://www.company.com/typo3verzeichnis/ |
Wobei die Einträge „www.company.com“ durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde ersetzt werden.

Falscher URL:
http://www.realpowerwork.com/index.php?id=31&tipUrl=http://%2Fde%2Ftip-a-friend.html&L=0
Abhilfe:
Bei der Erstellung des URLs hatte sich ein Fehler eingeschlichen. Unten angeführt der fehlerhafte Codeabschnitt:
|
temp.tipafriend = COA temp.tipafriend { wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a> # holt die Domain 10 = TEXT 1.data = getenv:HTTP_HOST … # setzt die Texte zusammen 10.wrap = &tipUrl=http://| … } |
Hier der berichtigte Codeabschnitt:
|
temp.tipafriend = COA temp.tipafriend { wrap = <a href="index.php?id=31|" class="tip" target="_self"><img src="fileadmin/templates/images/icons/mail-forward.png" alt="als Email senden" border=0></a> # holt die Domain 10 = TEXT 10.data = getenv:HTTP_HOST … # setzt die Texte zusammen 10.wrap = &tipUrl=http://| … } |

Es werden beim keinen der Auswahlen aus dem Verzeichnisbaum die „path mapping“ angezeigt.
Abhilfe:
Kontrollierren Sie nochmals Ihre RealURL Konfiguration. Wenn Sie eine eigene RealURL Konfigurationsdatei „realurl_conf.php“ verwenden, achten Sie darauf, dass die Einträge der Vorgabe in diesem Kapitel entsprechen.
Aus der linken Navigation wird „Info“ und aus dem 1. Dropdown Auswahlmenü wird „RealURL-Verwaltung“ gewählt.
Aus dem 2. Dropdown Auswahlmenü wird „ID-to-path mapping“ gewählt.

Wenn jetzt versucht wird einen „Path:“ zu ändern so wird nach klicken auf „Save“ oder auf das Diskettensymbol nachher wieder der alte Eintrag angezeigt.
Beispiel vorher:
![]()
Durchgeführte Änderung:
![]()
Nach klicken auf „Save wird wieder der vorherige Eintrag
angezeigt:
![]()
Ursache:
Die RealURL Extension 1.7.0 welche installiert war, dürfte mit der TYPO3 Version 4.5 nicht mehr kompatible sein.
Abhilfe:
Installation von RealURL 1.11.2 durchführen

Danach kommt die Updateaufforderung:

Wenn nach einer Rücksicherung von einer Backup Datei (über w4x_abckup) auf einen anderen Server der einen anderen Domainnamen besitzt, das Stylesheet nicht mehr gefunden wird, kann dies an den Einstellungen im Template Setup Bereich für RealURL liegen.
Suchen Sie im Setup Bericht den Eintrag „config.baseURL“ und ändern oder passen Sie den Eintrag an Ihre Domain an.
Wenn sich die TYPO3 Website in einen Unterverzeichnis der Domäne befindet, vergessen Sie nicht das Unterverzeichnis mit anzugeben und mit einen „/“ abzuschließen.
|
config.baseURL = http://www.Homepage.com/cms/ |
Anstatt “www.Homepage.com” muss der Host und Domainname Ihre Website eingetragen werden und anstatt “cms” ein eventuell vorhandenes Unterverzeichnis aus welchen diese TYPO3 Website installiert ist.

Abhilfe:
Wenn Sie in Ihren Root-Template den Eintrag „config.BaseURL = 1“ eingetragen haben und von einer externen Station mit der IP Adresse auf die Seite zugegriffen haben, wird jetzt versucht die Seite über den Hostname aufzulösen. Wenn Sie keinen DNS Server haben legen Sie auf dieser Station (wenn Sie nicht über das Internet auf die Seite zugreifen) in der „hosts“ Datei einen Eintrag für Ihren Servernamen an.
Wenn Sie über das Internet auf die Seite zugreifen wollen, muss der Domänenname der in der Browser Adressleiste angezeigt wird, öffentlich registriert sein, ansonsten kann der Domänenname nicht aufgelöst werden.
Sollte der Fehler immer noch auftreten kann auch Ihr Base
Verzeichnis falsch definiert sein.
|
config.baseURL = http://www.company.com/typo3verzeichnis/ |
Wobei die Einträge „www.company.com“ durch Ihren Domänennamen und der Eintrag „typo3verzeichnis“ durch den Pfadnamen indem Ihre TYPO3 Seite angelegt wurde, ersetzt werden.
Wenn Sie an die Grenzen der Standard-Funktionalität von TYPO3 Mailformular angelangt sind (vor allem wenn Sie möchten, dass die Form um spezielle Funktionen erweitert wird), können Sie diese Extension verwenden. Um mit Ihrem herkömmlichen HTML-Formulare (als HTML-Snippets) die volle Mailformular Funktionalität zu erhalten.
Diese Erweiterung ist als Folge-Extension zur „th_mailformplus“ und fast aller dahinterliegenden Funktionen des „th_mailformplus“ zu sehen. Viele weitere neue Funktionen mit einer völlig neuen Architektur- und Code. Das Ergebnis ist eine sehr flexible Herangehensweise an Form-Handling.
Die neue Architektur und TypoScript-Konfiguration ist es möglich, einfache Steuerung der Verarbeitung der Form, indem eine unendliche Anzahl von Prüfungen und Interzeptoren zur Bildung von Formularen zur Verfügung stehen. Die Bezeichnung Interzeptor kommt vom englischen intercept, was bedeutet, dass Sie etwas abfangen, bevor es passiert.
Nach erfolgreicher Formularübertragung Sie können die Eingabewerte durch spezielle Interzeptoren für die abschließende Verarbeitung formatieren und dem so genannten "Finisher" übergeben. Der „Finisher“ wird verwendet, um die Daten in die Datenbank speichern, E-Mails versenden, auf eine Seite zu verlinken, usw.
Funktionen vom Formhandler:
· HTML-Template basiert
· Server-Seite Fehlerprüfungen
· Senden eingereicht Werte als E-Mail
· auf eine Seite umleiten nach erfolgreicher Einreichung
· Bewahren Sie übermittelten Daten in DB
· Captcha-Unterstützung (captcha, sr_freecap, jm_recaptcha, Mathguard, wt_calculating_captcha)
· Mehrseitige Formulare
· HTML-Mails, Text-Mails, multipart E-Mails (HTML + plain)
· Datei-Upload Handhabung
· mehrseitige Formulare mit den Bedingungen (Filialen)
· Frontend mehrsprachige Unterstützung
· Backend-Modul zur Verwaltung und Export übermittelten Daten (PDF, CSV)
· etc.
Vorteile der Extension:
Sie können schon vorhandene HTML Email-Formulare verwenden, welche nur durch kleine Anpassungen für die Extension adaptiert werden.
1. Extension Formhandler
(formhandler) installieren.
2. Wählen Sie
„Install extension“ und danach „Make Updates“.
![]()
3. Wählen Sie „use
references to template instead…“ vor dem anklicken von „Update“ aus.

4. Kopieren Sie die
HTML-Vorlagedatei „template.html“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/Default/“
in Verzeichnis „fileadmin/templates/html“ mit dem Namen „contact_mailform_de.html“.
DA die Standardsprache Englisch ist, muss eine Anpassung der HTML-Template
Datei vorgenommen werden:
|
<!-- ###TEMPLATE_FORM1### begin --> ###ERROR### <div id="formhandler_contact_form"> <form id="mailform" method="post" action="###REL_URL###" enctype="multipart/form-data"> <fieldset class="csc-mailform"> <legend>###LLL:legend###</legend>
<input type="hidden" name="formhandler[submitted]" value="1" /> <div class="csc-mailform-field"> ###error_firstname### <label for="firstname">###LLL:firstname### ###required_firstname###</label> <input type="text" name="formhandler[firstname]" id="firstname" value="###value_firstname###"/> <div class="clear"></div> </div> <div class="csc-mailform-field"> ###error_lastname### <label for="lastname">###LLL:lastname### ###required_lastname###</label> <input type="text" name="formhandler[lastname]" id="lastname" value="###value_lastname###"/> <div class="clear"></div> </div> <div class="csc-mailform-field"> ###error_email### <label for="email">###LLL:email### ###required_email###</label> <input type="text" name="formhandler[email]" id="email" value="###value_email###"/> <div class="clear"></div> </div>
<div class="csc-mailform-field"> ###error_text### <label for="text">###LLL:text######required_text###</label> <textarea cols="50" rows="5" name="formhandler[text]" id="text" style="width:320px;">###value_text###</textarea> </div>
<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <div class="tx-extension-pi1-captcha"> <div class="captcha-left"> <span class="captcha-text">Eingabeüberprüfung: *</span> <br/> <span class="captcha-note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span> </div> ###CAPTCHA### <br /> <input type="text" size=30 name="captchafield" value=""> </div> <!--###CAPTCHA_INSERT###-->
<div class="csc-mailform-field"> <p>###LLL:required_fields###</p> <input type="submit" value="###LLL:submit###" ###submit_nextStep###/> </div> </fieldset> </form> </div> <!-- ###TEMPLATE_FORM1### end -->
<!-- ###TEMPLATE_EMAIL_USER_PLAIN### begin --> Hallo ###value_firstname### ###value_lastname###,
Sie haben gerade das Kontaktformular auf der RealPowerWorks Website ausgefüllt.
Danke für Ihre Anfrage, wir werden so rasch wie möglich antworten.
RealPowerWork Support Team <!-- ###TEMPLATE_EMAIL_USER_PLAIN### end -->
<!-- ###TEMPLATE_EMAIL_USER_HTML### begin --> <p> Hallo ###value_firstname### ###value_lastname###, </p> <p> Sie haben gerade das Kontaktformular auf der RealPowerWorks Website ausgefüllt. </p> <p> Danke für Ihre Anfrage, wir werden so rasch wie möglich antworten. </p> RealPowerWork Support Team <!-- ###TEMPLATE_EMAIL_USER_HTML### end -->
<!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### begin --> Hello Admin,
A user has just filled out the form.
###LLL:lastname### ###value_lastname### ###LLL:firstname### ###value_firstname### ###LLL:email### ###value_email###
<!-- ###TEMPLATE_EMAIL_ADMIN_PLAIN### end -->
<!-- ###TEMPLATE_EMAIL_ADMIN_HTML### begin --> <html> <head> <!-- OUTLOOK DOES NOT SEE STYLES LOCATED IN THE HEAD :( --> </head> <body> <style> p, table{font-family: Verdana; font-size: 10pt} .leftColumn {padding-top: 10px; padding-right: 5px; border-bottom: 1px dotted black} .rightColumn {padding-top: 10px; border-bottom: 1px dotted black; font-weight: bold} </style> <p>Hello Admin,</p> <p>A user has just filled out the form.</p> <table cellpadding="0" cellspacing="0"> <tr> <td class="leftColumn">###LLL:lastname###</td> <td class="rightColumn">###value_lastname###</td> </tr> <tr> <td class="leftColumn">###LLL:firstname###</td> <td class="rightColumn">###value_firstname###</td> </tr> <tr> <td class="leftColumn">###LLL:email###</td> <td class="rightColumn">###value_email###</td> </tr>
</table> </body> </html> <!-- ###TEMPLATE_EMAIL_ADMIN_HTML### end -->
<!-- ###TEMPLATE_SUBMITTEDOK### begin -->
<table> <tr> <td>###LLL:firstname###</td> <td>###value_firstname###</td> </tr>
<tr> <td>###LLL:lastname###</td> <td>###value_lastname###</td> </tr>
<tr> <td>###LLL:email###</td> <td>###value_email###</td> </tr>
</table> <div> ###PRINT_LINK### / ###PDF_LINK### / ###CSV_LINK### </div> <!-- ###TEMPLATE_SUBMITTEDOK### end --> |
Hinweis Für einen Multilanguage Umgebung kopieren Sie Datei im selben Verzeichnis nochmals mit den Namen „contact_mailform_en.html“, „contact_mailform_es.html“, etc. Öffnen Sie danach jede Datei und passen Sie die Texte der jeweiligen Sprache an.
5. Kopieren Sie die CSS-Vorlagedatei „styles.css“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/MasterTemplate“ in Verzeichnis „fileadmin/templates/css“ mit dem Namen „formhandler.css“. Ändern Sie die CSS Dateien entsprechend Ihren Bedürfnissen ab.
|
#formhandler_contact_form { width: 640px; }
#formhandler_contact_form .row { margin-bottom:10px; }
#formhandler_contact_form input.hidden, #formhandler_contact_form input[type="hidden"] { display: none; border: none; }
#formhandler_contact_form input.submit, #formhandler_contact_form input[type="submit"] { border:1px solid #ccc; width:auto; display:inline; clear:both; }
#formhandler_contact_form .mathguard { padding:0; }
#formhandler_contact_form .interests_box { border:1px solid #dedede; padding:8px; width:200px; margin-left:200px; height:180px; float:left; } #formhandler_contact_form .contact_box { border:1px solid #dedede; padding:8px; width:200px; margin-left:200px; float:left; }
#formhandler_contact_form .interests_box label, #formhandler_contact_form .contact_box label { width:70px; }
#formhandler_contact_form fieldset, #formhandler_contact_form input[type="text"], #formhandler_contact_form textarea { border:1px solid #dedede; }
#formhandler_contact_form fieldset { padding:30px 10px 10px 10px; }
#formhandler_contact_form input { padding:5px; }
.error { color:red; font-weight:bold; }
#formhandler_contact_form label { display:block; float:left; width:200px; } #formhandler_contact_form input[type="text"], #formhandler_contact_form textarea { display:block; width:200px; float:left; }
#formhandler_contact_form .clear { clear:both; }
#formhandler_contact_form .contexthelp { border:1px solid #dedede; background-color: #efefef; padding:5px; display:block; font-size:small; }
#formhandler_contact_form .info { float:left; width:200px; margin-left:20px; } |
6. Kopieren Sie die
Sprachdatei „lang.xml“ aus dem Verzeichnis „typo3conf/ext/formhandler/Examples/Default/“
in Verzeichnis „fileadmin/templates/lang“ mit dem Namen „formhandler.xml“.
Fügen Sie in der Sprachdatei für jede Sprache folgende Zeilen ein um ein zusätzlichen
Eingabefelder in einer Multilanguage Umgebung anzuzeigen:
|
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> <T3locallang> <data type="array"> <languageKey index="default" type="array"> … <label index="email">E-Mail</label> <label index="text">Text</label> … </languageKey> <languageKey index="en" type="array"> … <label index="text">Text</label> <label index="captcha">Validate entry</label> … </languageKey> <languageKey index="de" type="array"> … <label index="text">Text</label> <label index="captcha">Eingabeüberprüfung</label> </languageKey> <languageKey index="de" type="array"> … <label index="text">Texte</label> <label index="captcha">Validation des entrées</label> … |
7. Kopieren Sie den Inhalt der Datei „typoscript_setup.txt“ aus dem Verzeichnis „typo3conf/ext/formhandler/example_form/singlepage_form/“ in den Setup Bereich des TYPO3 Templates, welches für diese Seite verwendet wird und führen Sie folgende Änderungen durch:
|
############## Konfiguration Formhandler (formhandler) ################## #### Website contact mail form #### plugin.Tx_Formhandler.settings { requiredSign = * templateFile = fileadmin/templates/html/contact_mailform_de.html langFile = fileadmin/templates/lang/formhandler.xml cssFile = fileadmin/templates/css/formhandler.css
# HTML wrapping by validation error errorListTemplate { totalWrap = <ul>|</ul> singleWrap = <li class="error">|</li> } singleErrorTemplate { singleWrap = <span class="error">|</span><br /> }
# errorChecks for the form fields validators.1.class = Tx_Formhandler_Validator_Default validators.1.config.fieldConf { name { errorCheck.1 = required errorCheck.1 = maxLength errorCheck.1.value = 50 } email { errorCheck.1 = required errorCheck.2 = email } text { errorCheck.1 = required } captchafield.errorCheck.1 = captcha }
# finisher contact entry finishers.1.class = Tx_Formhandler_Finisher_Mail finishers.1.config { limitMailsToUser = 5 admin { to_email = webmaster@realpowerwork.com to_name = RealPowerWork Webmaster subject = Contact Request sender_email = contactform@realpowerwork.com replyto_email = email replyto_name = name } user { to_email = email to_name = name subject = ###LLL:user_subject### sender_email = contactform@realpowerwork.com sender_name = RealPowerWork Website replyto_email = webmaster@realpowerwork.com attachPDF { class = Generator_WebkitPdf config { pid = 23 } } }
# finisher DB Entry finisher.2 { class = Tx_Formhandler_Finisher_DB config { table = tt_content key = uid fields { header { mapping = name if_is_empty = None given } bodytext { mapping = subject separator = , } hidden = 1 pid = 39 subheader.special = sub_datetime crdate.special = sub_tstamp tstamp.special = sub_tstamp imagecaption.special = ip } } }
# finisher redirect page finishers.3 { class = Tx_Formhandler_Finisher_Redirect config { redirectPage = 1 } } finishers.4.class = Tx_Formhandler_Finisher_SubmittedOK finishers.4.config { returns = 1 actions { pdf { class = Generator_WebkitPdf config { pid = 23 } } csv { class = Generator_Csv } } } } |
8. Erstellen Sie
eine neue Seite in TYPO3 mit dem Namen „Kontakt“, welche das Mailformular
enthalten soll.
9. Erstellen Sie ein neues Inhaltselement als „Allgemeines Plug-In“ und wählen Sie im Reiter „Plug-In“ die Extension „Formhandler“ aus.
10. Geben Sie in die angezeigten
Felder nichts ein, da die Werte schon über TypoScript im Root Template
festgelegt wurden.

11. Das Inhaltselement abspeichern.
12. Anzeige des Formulars im Frontend.
1. Wenn Sie die
Templatedatei im Inhaltselement eingetragen haben, entfernen Sie diesen Eintrag
wieder, denn diese wird jetzt über TS festgelegt.
2. Legen Sie für
jede Sprache ein HTML-Template an. Kopieren Sie dazu das vorhanden Template „contact_mailform_de.html“
aus dem Verzeichnis „fileadmin/templates/html/“ auf die gewünschten Sprachen
wie z.B. „contact_mailform_en.html“ und „contact_mailform_es.html“ im selben
Verzeichnis.
3. Kopieren Sie die
Datei „contact_mailformplus_en.html“ und erzeugen Sie eine neue im selben
Verzeichnis mit dem Namen „contact_mailformplus_de.html“.
4. Bearbeiten Sie
die „„contact_mailformplus_de.html“ Datei und übersetzen Sie die E-Mail Texte
auf die deutsche Sprache.
5. Geben Sie folgenden Code im Setup Bereich Ihres Templates ein.
|
… # Konfiguration vom MailformPlusPlus (mailformplusplus) … # select html forms for multilanguage [globalVar = GP:L = 0] … plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_de.html … [global]
[globalVar
= GP:L = 1] plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_en.html … [global]
[globalVar
= GP:L = 1] plugin.Tx_Formhandler.settings.templateFile = fileadmin/templates/html/contact_mailform_de.html … [global] … |
ACHTUNG: Alle TS Einstellungen die für "plugin.Tx_Formhandler.settings" gemacht werden, sind dies sozusagen die Default-Einstellungen vom „Formhandler“ und werden durch die Eingabe im eigentlichen „Formhandler“ Element überschrieben! D.h. wenn man das zu verwendende HTML-Template (=Formular) mit TypoScript definiert, dann muss man die Felder im Inhaltselement „Formhandler“ leer lassen!
6. Erstellen Sie auf
der Seite „Kontakt“ die zusätzlichen Seiten für die einzelnen Sprachen und
passen Sie die Überschriften an. Kopieren Sie dann den Seiteninhalt der
„Default“ Seite auf diesen neue Seiten.
7. Entferne Sie die
automatisch eingefügte Überschrift „(Kopie 1)“ wieder aus dem Inhaltelement
8. Überprüfen Sie die Funktion der Mehrsprachigkeit indem Sie mit dem Ländersymbol die Sprache wechseln.
In einem vorherigen Kapitel wurde die „captcha“ Extension installiert. Wir wollen für Mailformplus gleich diese Extension als „Captcha“ verwenden.
1. Schreiben Sie in den Setup Bereich Ihres Template zur Aktivierung von Captcha folgende Zeilen hinzu.
|
… stylesheetFile = fileadmin/templates/css/mailformplus.css
# activate extension "captcha" in th_mailform plugin.tx_thmailformplus_pi1.captchaFieldname = captchafield }
plugin.tx_thmailformplus_pi1.default { … |
2. In die zugehörigen HTML-Template Dateien der Formulare fügen Sie folgende Zeilen ein.
|
… <!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <div class="tx-extension-pi1-captcha"> <span class="captcha_text">Eingabeüberprüfung: *</span> <br /> <span class="captcha_note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span> <span class="captcha_image">###CAPTCHA_HTML###</span>> <br /> <input class="captcha_input" type="text" size=30 name="captchafield" value=""> </div> <!--###CAPTCHA_INSERT###-->
<p>###LLL:required_fields###</p>
<input type="submit" value="###LLL:submit###"/> … |
3. Für die Formatierung von den Captcha Elementen wurde folgendes in die CSS Datei eingefügt.
|
/* CSS for captcha extension */ .tx-extension-pi1-captcha { padding-top: 20px; }
.captcha-left { float: left; margin-right: 10px; }
.captcha-text { font-weight: bold; width: 150px }
.captcha-note { display: block; font-size: 9px; width: 150px; } |
Unter MailformPlus (th_mailformplus) sah der Eintrag im Setup Bereich vom Root Template wie folgt aus:
|
plugin.tx_thmailformplus_pi1 { langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php default { email_to = admin@host.com email_sendtouser = email email_subject_user = Your contact request email_sender = noreply@host.com } fieldConf { name { errorCheck = required } email { errorCheck = required,email } text { errorCheck = required } } } |
Bei der Verwendung der Extension Formhandler muss der Eintrag dann folgenderweise abgeändert werden:
|
plugin.Tx_Formhandler.settings { langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php validators.1.class = Validator_Default validators.1.config.fieldConf { name { errorCheck.1 = required } email { errorCheck.1 = required errorCheck.2 = email } text { errorCheck.1 = required } fieldConf { captchafield.errorCheck.1 = captcha } } finishers.1.class = FinisherMail finishers.1.config { admin { to_email = admin@host.com sender_email = noreply@host.com } user { to_email = email sender_email = noreply@host.com subject = Your contact request } } finishers.2.class = Tx_Formhandler_Finisher_SubmittedOK } |
Beim Aufruf der Webseite mit dem Plugin „Formhandler“ wird folgende Meldung angezeigt.
|
No TypoScript config found fpr Formhandler! Please add the static template or write your own configuration. |
Abhilfe:
Sie müssen im TYPO3 Root Template im Setup Bereich noch die Extension „Formhandler“ definieren.
|
… ############## Konfiguration Formhandler (formhandler) ################## #### Website contact mail form #### plugin.Tx_Formhandler.settings { requiredSign = * langFile = typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.php cssFile = fileadmin/templates/css/formhandler.css
# errorChecks for the form fields validators.1.class = Validator_Default validators.1.config.fieldConf { name { errorCheck.1 = required } email { errorCheck.1 = required errorCheck.2 = email } text { errorCheck.1 = required } fieldConf { captchafield.errorCheck.1 = captcha } } finishers.2 { class = Tx_Formhandler_Finisher_Default config { } } … |
Es wurde jetzt TypoScript für die Extension „Formhandler“ definiert doch nun kommt folgender Meldung beim Aufruf der Webseite.
|
Missing finishers! The Flexform contains 'webmanager@realpowerwork.com' but typoscript configuration is incomplete. Please add : Tx_Formhandler_Finisher_Mail |
Abhilfe:
Fügen Sie einen Block für den „Tx_Formhandler_Finischer_Mail“ ein.
|
plugin.Tx_Formhandler.settings { … finishers.1.class = Tx_Formhandler_Finisher_Mail finishers.1.config { admin { to_email = ebmaster@realpowerwork.com to_name = RealPowerWork Webmaster subject = Contact Request sender_email = contactform@realpowerwork.com replyto_email = email replyto_name = name } user { to_email = email to_name = name subject = ###LLL:user_subject### sender_email = contactform@realpowerwork.com sender_name = RealPowerWork Website replyto_email = webmaster@realpowerwork.com } finishers.2 { class = Tx_Formhandler_Finisher_Default config { } ... } |
Nach Definition vom TypoScript Block „Tx_Formhandler_Finisher_Redirect“ kommt nun folgender Meldung beim Aufruf der Webseite.
|
Missing finishers! The Flexform contains '1' but typoscript configuration is incomplete. Please add : Tx_Formhandler_Finisher_Redirect |
Abhilfe:
Fügen Sie einen Block für den „Tx_Formhandler_Finischer_Redirect“ ein.
|
plugin.Tx_Formhandler.settings { … finishers.3 { class = Tx_Formhandler_Finisher_Redirect config { redirectPage = 1 } } … } |
Wobei die Nummer “1” die TYPO3 ID ist auf welche danach gesprungen werden soll.
|
No template file found. Check your TypoScript setup and/or your plugin settings and make sure you defined a template file! |
Abhilfe:
Fügen Sie folgende Zeile in die TYPO3 Skript Definition „Formhandler“ hinzu.
|
plugin.Tx_Formhandler.settings { … templateFile = fileadmin/templates/html/contact_mailform.html … } |
|
TYPO3 Fatal Error: The file "typo3conf/ext/th_mailformplus/example_form/singlepage_forms/improved_demo_lang.xml" is no TYPO3 language file! |
Abhilfe:
Fügen Sie folgende Zeile in die TYPO3 Skript Definition „Formhandler“ hinzu.
|
plugin.Tx_Formhandler.settings { … templateFile = fileadmin/templates/html/contact_mailform.html … } |

Abhilfe: Kontrollieren Sie ob die CSS Datei „styles.css“ in das richtige Verzeichnis mit dem Namen „formhandler.css“ kopiert wurde.

Ursache:
Sie verwenden die Standard HTML-Template Datei in welchen die E-Mail Texte alle auf Englisch ausgeführt sind.
Abhilfe:
Wenn Sie nur eine Sprache auf der Website verwenden können Sie die Text in der Datei direkt auf Deutsch ändern. Wenn Sie eine mehrsprachige Website betreiben müssen Sie für jede Sprache eine eigene HTML-Template Datei erzeugen und diese im Setup Bereich vom Template bei der Sprachdefinition angeben. Siehe dazu Kapitel „Anpassung von Formhandler für Mehrsprachigkeit“.
· NEU: Schutz gegen Cross-Site-Scripting (XSS) Attacken mit der TYPO3-Kernel-Methode removeBadHTML (Dank an Rupert Germann)
· Es gibt drei verschiedene Modi Umsetzung: Gästebuch Liste, Formular für einen neuen Eintrag und einen Teaser-Modul. Als Teaser werden die Anreißer auf der Homepage oder einer Themenüberblicksseite bezeichnet.
· Weitgehend konfigurierbar Gästebuch Inhaltselement.
· Sie können bestimmte Dinge wie Form Pflichtfelder, stripping HTML-Tags, die Validierung der E-Mail- und Webseitenfelder einstellen.
· Für das Gästebuch Anzeige und das Teaser-Modul können Sie die Anzahl und die Sortierung der Einträge festlegen.
· Außerdem können Sie die Textlänge der Eintragung im Teaser-Modus festlegen. Es gibt Langwörter Schutz.
· Beinhaltet ein CSS-basierte Template pi1/guestbook_template.html.
· E-Mail Benachrichtigung an eine benutzerdefinierte E-Mail- und an die Benutzer E-Mail Adresse nach dem neuen Gästebuch-Einträge.
· Ersetzen von BBCodes mit „Emoticons“, Anzeige der E-Mail mit Spamschutz, Kommentarmöglichkeit für den Backend Benutzer vom Gästebuch.
· Sie können Einträge aus „tt_guest“ sehr leicht umwandeln zu „ve_guestbook“ Einträgen mit einer einzigen SQL-Anweisung.
1. Holen Sie sich
die Extension „ve_guestbook“ V2.10.1 vom Online-Repository.
2. Installieren Sie
die Extension.
3. Kopieren
Sie die HTML-Vorlagedatei „guestbook_template.html“ aus dem Verzeichnis
„typo3conf/ext/ve_guestbook/pi1/“ in Verzeichnis „fileadmin/templates/html/“
mit dem Namen „ve_guestbook.tmpl“.
4. Für ein breiteres Textfeld Ändern Sie im HTML-Template folgendes:
|
… <tr> <td valign="top">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></td> <td><textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="8" cols="50">###VALUE_ENTRY###</textarea></td> </tr> … |
Hinweis Bearbeiten Sie die Datei nur mit einem Editor (PSPad) mit welchen Sie in UTF-8 speichern können, wenn Sie als Standardzeichensatz UTF-8 verwenden.
5. Fügen Sie noch den Text für die Pflichtfelder ein:
|
.. <!--###CAPTCHA_INSERT###--> <tr> <td> </td> <td>Mit <span class="tx-guestbook-form-obligationfield">*</span> gekennzeichnete Felder <strong>müssen</strong> ausgefüllt werden.</td> </tr> <tr> <td> </td> … |
6. Das angepasste
HTML Template könnte so aussehen.
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>ve_guestbook</title> </head>
<body>
<!-- ###TEMPLATE_LIST### begin --> <div class="tx-guestbook-result"> ###RESULT_COUNT### </div>
<div class="tx-guestbook-pagination"> ###LINK_PREV### ###PAGES### ###LINK_NEXT### </div> <div class="tx-guestbook-clear"> </div>
<!-- ###CONTENT### begin -->
<!-- ###ENTRY### begin --> <h2 class="tx-guestbook-header">###GUESTBOOK_FIRSTNAME### ###GUESTBOOK_SURNAME### ###GUESTBOOK_FROM### ###GUESTBOOK_PLACE###</h2> <div class="tx-guestbook-date">###GUESTBOOK_DATE###</div><br /> <div class="tx-guestbook-right">
###GUESTBOOK_ENTRY### <!-- ###ENTRY_ENTRYCOMMENT### begin --> <h3>###FORM_ENTRYCOMMENT###:</h3> <class="tx-guestbook-comment">###GUESTBOOK_ENTRYCOMMENT### <!-- ###ENTRY_ENTRYCOMMENT### end --> </div>
<div class="tx-guestbook-clear"> </div> <!-- ###ENTRY### end-->
<!-- ###CONTENT### end -->
<div class="tx-guestbook-pagination"> ###LINK_PREV### ###PAGES### ###LINK_NEXT### </div> <div class="tx-guestbook-clear"> </div> <!-- ###TEMPLATE_LIST### end -->
<!-- ###TEMPLATE_NO_ENTRIES### begin --> <h2 class="tx-guestbook-header">###NO_ENTRIES_HEADLINE###</h2> <div class="tx-guestbook-list-row">###NO_ENTRIES_TEXT###</div> <!-- ###TEMPLATE_NO_ENTRIES### end -->
<!-- ###TEMPLATE_TEASER### begin --> <h2 class="tx-guestbook-header">###TEASER_HEADLINE###<class="tx-guestbook-date">###GUESTBOOK_DATE###</h2> <div class="tx-guestbook-latest"> <!-- ###CONTENT### begin --> <!-- ###ENTRY### begin --> <br /> ###GUESTBOOK_FIRSTNAME### ###GUESTBOOK_SURNAME###:<br /> ###GUESTBOOK_ENTRY### <!-- ###ENTRY### end--> <!-- ###CONTENT### end --> <class="tx-guestbook-latest-more"><!-- ###LINK_ITEM### -->###TEASER_MORE###<!-- ###LINK_ITEM### --> </div> <!-- ###TEMPLATE_TEASER### end -->
<!-- ###TEMPLATE_FORM### --> <class="tx-guestbook-form-error">###FORM_ERROR### ###FORM_ERROR_FIELDS###
<form method="post" action="###ACTION_URL###"> <fieldset> <legend>###FORM_LEGEND###</legend>
<div class="tx-guestbook-field"> <label for="firstname">###FORM_FIRSTNAME### <span class="tx-guestbook-form-obligationfield">###FORM_FIRSTNAME_OBLIGATION###</span></label> <input type="text" name="tx_veguestbook_pi1[firstname]" value="###VALUE_FIRSTNAME###" class="tx-guestbook-form-inputfield-med" id="firstname" /> </div>
<div class="tx-guestbook-field"> <label for="surname">###FORM_SURNAME### <span class="tx-guestbook-form-obligationfield">###FORM_SURNAME_OBLIGATION###</span></label> <input type="text" name="tx_veguestbook_pi1[surname]" value="###VALUE_SURNAME###" class="tx-guestbook-form-inputfield-med" id="surname" /> </div>
<div class="tx-guestbook-field"> <label for="email">###FORM_EMAIL### <span class="tx-guestbook-form-obligationfield">###FORM_EMAIL_OBLIGATION###</span></label> <input type="text" name="tx_veguestbook_pi1[email]" value="###VALUE_EMAIL###" class="tx-guestbook-form-inputfield-big" id="email" /> </div>
<div class="tx-guestbook-field"> <label for="homepage">###FORM_HOMEPAGE### <span class="tx-guestbook-form-obligationfield">###FORM_HOMEPAGE_OBLIGATION###</span></label> <input type="text" name="tx_veguestbook_pi1[homepage]" value="###VALUE_HOMEPAGE###" class="tx-guestbook-form-inputfield-big" id="homepage" /> </div>
<div class="tx-guestbook-field"> <label for="place">###FORM_PLACE### <span class="tx-guestbook-form-obligationfield">###FORM_PLACE_OBLIGATION###</span></label> <input type="text" name="tx_veguestbook_pi1[place]" value="###VALUE_PLACE###" class="tx-guestbook-form-inputfield-med" id="place" /> </div>
<!-- ###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <div class="tx-guestbook-field"> <label for="capture">###FORM_CAPTCHA_RESPONSE### <span class="tx-guestbook-form-obligationfield">*</span>###CAPTCHA_IMAGE###</label> <input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" value="" id="capture" />
<!-- ###CAPTCHA_INSERT### --> <!-- ###SR_FREECAP_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <div class="tx-guestbook-field"> <label for="freecap">###SR_FREECAP_NOTICE### <span class="tx-guestbook-form-obligationfield">*</span><br /><span class="freecap-span">###SR_FREECAP_CANT_READ###</span></label> ###SR_FREECAP_IMAGE### <input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" id="freecap" /> </div> <!-- ###SR_FREECAP_INSERT### --> <div class="tx-guestbook-field"> <label for="message">###FORM_ENTRY### <span class="tx-guestbook-form-obligationfield">###FORM_ENTRY_OBLIGATION###</span></label> <textarea name="tx_veguestbook_pi1[entry]" class="tx-guestbook-form-textarea" rows="7" cols="30" id="message">###VALUE_ENTRY###</textarea> </div> </div> <div class="tx-guestbook-field"> <p>Alle Felder mit * m�ssen ausgef�llt werden.</p> <input type="hidden" name="id" value="###PID###" /> <input type="hidden" name="tx_veguestbook_pi1[submitted]" value="1" /> <input type="submit" value="###FORM_SUBMIT###" class="tx-guestbook-submit" /> </div>
</fieldset> </form> <!-- ###TEMPLATE_FORM### end -->
</body> </html> |
7. Erstellen Sie eine CSS
Datei mit dem Namen „ve_guestbook.css“ im Verzeichnis „fileadmin/css“ mit
folgenden Einträgen:
|
/* ** Version : 1.0 ** Datei : ve_guestbook.css ** Desc : Gästebuch ** Extension : ve_guestbook V2.10.1 ** Changes : 26.11.2011 - pf - create file version */
/* CSS Document */ /*.tx-veguestbook-p1 { line-hight:1; }*/
* html .tx-veguestbook-pi1, * html .tx-guestbook-list-header, * html .tx_guestbook_formfield { height:1%; overflow:hidden; } .tx-veguestbook-pi1 { font-size:100%; }
/* error handling */ .tx-veguestbook-pi1 p.tx-guestbook-form-error { font-weight:bold; color:#ff0000; }
/* display of result count */ .tx-veguestbook-pi1 .tx-guestbook-result { font-weight:bold; float:left; }
/* pagination */ .tx-veguestbook-pi1 .tx-guestbook-pagination { font-size:75%; font-weight:bold; float:right; }
/* styles for list mode */ /* IE Browser Hack .tx-veguestbook-pi1 h2.tx-guestbook-header */ *+html .tx-veguestbook-pi1 h2.tx-guestbook-header { clear:both; }
/* Format Header Text */ .tx-veguestbook-pi1 h2.tx-guestbook-header { background:#bfbbd0; color:#333333; display:block; font-size:100%; font-weight:bold; padding: 0.25em; width: 44.5em; }
/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-left */ *+html .tx-veguestbook-pi1 .tx-guestbook-left { padding-top: 0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-left { float:left; font-size:80%; width: 35em; background:#EFEFEF; min-height: 1em; padding: 0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-left p { color:#dddddd; }
/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-right */ *+html .tx-veguestbook-pi1 .tx-guestbook-right { padding: 0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-right { float:left; width: 44.5em; background:#e7eff6; padding: 0.25em; line-height:1; }
/* styles for latest mode - * html .tx-veguestbook-pi1, * html .tx-guestbook-list-header, * html .tx_guestbook_formfield { height:1%; overflow:visible; }*/
/* IE Browser Hack */ *+html .tx-veguestbook-pi1 .tx-guestbook-latest p, *+html .tx-veguestbook-pi1 .tx-guestbook-right p { padding: 0; }
.tx-veguestbook-pi1 .tx-guestbook-latest p, .tx-veguestbook-pi1 .tx-guestbook-right p { color:#333; padding-left: 1em; }
.tx-veguestbook-pi1 .tx-guestbook-latest p.tx-guestbook-date, .tx-veguestbook-pi1 .tx-guestbook-right p.tx-guestbook-date { font-weight: bold; }
.tx-veguestbook-pi1 .tx-guestbook-right h3 { font-size:100%; color:#990000; font-weight:bold; background:none; }
.tx-veguestbook-pi1 .tx-guestbook-right .tx-guestbook-comment { font-size:75%; color:#333; font-style: italic; }
.tx-veguestbook-pi1 .tx-guestbook-latest { display:block; padding:0.25em; clear:both; }
/* form styles */ .tx-veguestbook-pi1 .tx-guestbook-field { clear:both; width:100%; display:block; padding: 0.25em 0; }
.tx-veguestbook-pi1 .tx-guestbook-field label { clear: both; display: block; float: left; width: 10em; padding-right: 0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-field input.tx-guestbook-form-inputfield-med { float:left; width:15em; }
.tx-veguestbook-pi1 .tx-guestbook-field input.tx-guestbook-form-inputfield-big { float:left; width:25em; }
.tx-veguestbook-pi1 .tx-guestbook-field textarea.tx-guestbook-form-textarea { width: 40em; display: block; float: left; }
.tx-veguestbook-pi1 .tx-guestbook-field span.tx-guestbook-form-obligationfield { color:#990000; }
.tx-veguestbook-pi1 fieldset { border:none; }
.tx-veguestbook-pi1 legend { display:none; }
.tx-veguestbook-pi1 .tx-guestbook-freecap { float:left; display:block; background:#F7F7F7; border: 1px solid #CCC; }
.tx-veguestbook-pi1 .tx-guestbook-freecap { margin-left:2.25em; }
.tx-veguestbook-pi1 .tx-guestbook-freecap img { float:left; display:block; padding-left:0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-freecap input { float:left; }
.tx-veguestbook-pi1 .tx-guestbook-freecap label { clear:both; display:block; float:none; width:25em; margin-bottom:0.5em; }
.tx-veguestbook-pi1 .tx-guestbook-freecap p { font-size:75%; padding:0.25em; }
.tx-veguestbook-pi1 .tx-guestbook-freecap h3 { display:none; }
.tx-veguestbook-pi1 .tx-guestbook-freecap span.tx-srfreecap-pi2-cant-read { color:#990000; }
/* IE Browser Hack .tx-veguestbook-pi1 .tx-guestbook-clear */ *+html .tx-veguestbook-pi1 .tx-guestbook-clear { display:block; }
.tx-veguestbook-pi1 .tx-guestbook-clear { clear:both; line-height: 0; }
.tx-veguestbook-pi1 input.tx-guestbook-submit { width:auto; display:block; } |
Kopieren Sie die
Sprachdatei „locallang.xml“ aus dem Verzeichnis
„typo3conf/ext/ve_guestbook/pi1/“ in ein lokalen Verzeichnis mit den gleichen
Namen.
Benennen Sie die originale „locallang.xml“ Datei auf „locallang.xml.old“ um.
Bearbeiten Sie die lokale „locallang.xml“ Datei und ersetzen Sie ggf. „default“
Sprache geben die Standardsprache Ihrer TYPO3 Installation.
Kopieren Sie die Datei nach der Bearbeitung wieder in das Verzeichnis
„typo3conf/ext/ve_guestbook/pi1/“.
Hinweis Bearbeiten Sie die Datei nur mit einem Editor
(PSPad) mit welchen Sie in UTF-8 speichern können, wenn Sie als
Standardzeichensatz UTF-8 verwenden.
8. Geben Sie folgenden Code im Setup Bereich Ihres Templates ein:
|
… ############ Gästebuch (ve_guestbook) ################## # Konfiguration vom Gästebuch (ve_guestbook) plugin.tx_veguestbook_pi1 {
templateFile = fileadmin/templates/html/ve_guestbook.tmpl email_from_name = RealPowerWork Homepage email_from_mail = webmaster@realpowerwork.com _CSS_DEFAULT_STYLE >
emoticons { active = 1 10 = IMAGE 10 { file = EXT:ve_guestbook/pi1/emoticons/###EMOTICON###.gif params = hspace=1 vspace=1 valign=bottom border = 0 altText = Emoticon titleText = Emoticon }
subst { 11.str = :D 11.val = 1 12.str = :) || :-) 12.val = 2 13.str = :( || :-( 13.val = 3 14.str = :cry: 14.val = 4 15.str = :?: 15.val = 5 16.str = ;) || ;-) 16.val = 6 17.str = :D 17.val = 7 18.str = :cool: 18.val = 8 19.str = :P 19.val = 9 } } } … |
9. Am Ende wird im Setup Bereich Ihres Template beim „page“ Objekt noch die CSS Datei für das Gästebuch eingefügt:
|
… # Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte # des Dokumentes „temp.mainTemplate“ und „temp.headTemplate“ page = PAGE page { includeCSS { file1 = fileadmin/templates/css/ve_guestbook.css file2 = fileadmin/templates/css/rpw.css … } |
10. Erstellen Sie eine neue Seite
„Gästebuch“. Innerhalb dieser Seite erstellen Sie eine normale Seite mit dem
Namen „Formular“ und einen SysOrdner mit dem Namen „Eintrag“.
Auf der Seite „Gästebuch“ werden später die Gästebucheinträge angezeigt und
kann durch klicken auf einen Link eine neuer Gästebucheintrag erzeugt werden.
Auf der Seite „Formular“ wird das Formular für neue Gästebucheinträge
hinterlegt.
Der SysOrdner „Eintrag“ wird zur Ablage der Gästebucheinträge in der Datenbank
verwendet.
![]()
11. Als erstes erstellen Sie auf der
Seite „Gästebuch“ ein Inhaltselement „Text“.
Und Schreiben Sie den Text „Ins Gästebuch eintragen“ im Reiter „Text“.

12. Zur Erstellung des Links markieren
Sie den vorher eingegeben Text und klicken dann auf das Symbol zum Erstellen von
Links ![]()
Wählen Sie im Pop-Up Fenster den Reiter „Seite“ und aus dem Ordnerbaum die
Seite „Formular“ aus. Dieser Link kann für Neueintragungen in das Gästebuch
verwendet werden.

13. Jetzt erstellen Sie zusätzlich auf
der Seite Gästebuch ein Inhaltselement „Gästebuch“.
Wählen Sie bei was soll angezeigt werden „LIST“ und beim Ausgangspunkt den
SysOrdner „Eintrag“ aus. Wählen Sie hier kein „Template“ aus, da dieses im TS
Script festgelegt wurde.

14. Erstellen Sie auf der Seite
„Formular“ ein Inhaltselement „Gästebuch“.
Wählen Sie bei was soll angezeigt werden „FORM“ und beim Ausgangspunkt den
SysOrdner „Eintrag“ aus. Wählen Sie hier kein „Template“ aus, da dieses im TS
Script festgelegt wurde.

15. Im Reiter „Formular“ im selben
Inhaltselement wählen Sie Die Felder „Nachname“, „E-Mail“ und „Homepage“ aus.
Klicken auf „E-Mail validieren“ und „Website“ überprüfen (wenn gewünscht). Als
Zielseite nach dem Eintragen wählen Sie die Seite „Gästebuch“ aus. Als E-Mail
Empfänger bei neuen Einträgen geben Sie den Website Administrator ein. Sie
können jetzt noch anwählen ob der Benutzer eine E-Mail erhalten soll.

16. Die Extension ist jetzt
Funktionsfähig.
Wir wollen auch hier wieder für das Gästebuch die Extension „captcha“ für die Captcha Funktion verwenden. Dazu müssen wird den schon vorhanden Abschnitt im der HTML-Template Datei „guestbook_template.tmpl“, welcher für die Captcha Extension „sr_freecap“ eingefügt ist entfernen und durch den Text der im Kapitel „10.6.4 Captcha in Mailformplus aktivieren“ angeführt wir ersetzen.
Vorhandener Abschnitt im „guestbook_template.tmpl“ für „sr_freecap“:
|
<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <tr> <td valign="top">###FORM_CAPTCHA_RESPONSE###<br> ###SR_FREECAP_NOTICE### ###SR_FREECAP_CANT_READ###</td> <td><input type="text" class="tx-guestbook-form-inputfield-med" name="tx_veguestbook_pi1[captcha_response]" title="###SR_FREECAP_NOTICE###" value="" /> ###SR_FREECAP_IMAGE###</td> </tr> <!--###CAPTCHA_INSERT###--> |
Neuer Abschnitt für Captcha mit Extension „captcha“:
|
<!--###CAPTCHA_INSERT### this subpart is removed if CAPTCHA is not enabled! --> <tr> <td valign="top"> <span class="captcha-left"> <span class="captcha-text">Eingabeüberprüfung: *</span> <br/> <span class="captcha-note">(um Mißbrauch dieser Funktion zu vermeiden geben Sie bitte die Buchstaben des Bildes in das nebenstehende Feld ein.)</span> </span> <td> ###CAPTCHA### <br /> <input type="text" class="tx-guestbook-form-inputfield-med" size=30 name="captchafield" value=""> </td> </tr> <!--###CAPTCHA_INSERT###--> |
|
Sunday, 20-11-11 18:55 |
Abhilfe:
Sie müssen im Setup Bereich des Root Template die
Sprachvariable „locale_all“ vor der Extension Definition festlegen:
|
… config.sys_language_uid = 0 … ############ Gästebuch (ve_guestbook) ################## … |
Hinweis Die „locale_all“ ist abhängig vom Serverbetriebssystem richtig zu setzen unter Windows ist es "german", unter Linux/Apache kann es "de", "de_DE", "de_DE.utf-8" oder ähnlich heissen. Nur eine dieser Möglichkeit ist richtige für Ihren TYPO3 Server.
|
Fatal error: Call to undefined method t3lib_div::GPvar() in /home/.sites/112/site415/web/typo3conf/ext/ve_guestbook/pi1/class.tx_veguestbook_pi1.php on line 666 |
Ursache:
Dieser Fehler tritt ab TYPO3 4.6.x auf. Bei dieser TYPO3 Version der „GPvar“ nicht mehr unterstützt. Man soll jetzt anstatt des „GPvar“ den Aufruf mit „t3lib_div::_GP()“ verwenden.
Abhilfe:
Im Moment gibt es noch kein Update der „ve_guestbook“ Extension. Sie müssen im Moment die Extension manuell bearbeiten. Öffnen Sie die Datei „class.tx_vegeustbook_pi.php“ und ändern Sie alle „GPvar“ Aufrufe auf „_GP“ mit Ersetzen um.
Beispiel alten „GPvar“ Eintrages:
|
$this->postvars = t3lib_div::GPvar ( 'tx_veguestbook_pi1' ) ? t3lib_div::GPvar ( 'tx_veguestbook_pi1' ) : array (); |
Beispiel neuen „_GP“ Eintrages:
|
$this->postvars = t3lib_div::_GP( 'tx_veguestbook_pi1' ) ? t3lib_div::_GP( 'tx_veguestbook_pi1' ) : array (); |

Abhilfe:
Im Moment gibt es noch kein Update der „ve_guestbook“ Extension. Sie müssen im Moment die Extension manuell bearbeiten. Öffnen Sie die Datei „class.tx_vegeustbook_pi.php“ un führen sie folgende Änderung durch.
Beispiel des alten „$markerArray“ Eintrages (Zeile 633):
|
$markerArray ['###' . strtoupper ( $key ) . '###'] = $value; |
Beispiel des neue „$markerArray“ Eintrages
|
$markerArray ['###' . strtoupper ( $key ) . '###'] = $value[0]['target']; |
|
Fatal error: Class 'user_fcmail' not found in /home/.sites/112/site415/web/t3lib/class.t3lib_div.php on line 4926 |
Abhilfe:
Folgende Änderung in „localconf.php“ durchgeführt und den „email with php_safemode“ ausgeschaltet:
|
$TYPO3_CONF_VARS['GFX']['TTFdpi'] = 96;
# email with php_safemode=on #if (!function_exists('user_fcmail')) { #$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';
# function user_fcmail($parameters) { # $to = $parameters['to']; # $subject = $parameters['subject']; # $messageBody = $parameters['messageBody']; # $additionalHeaders = $parameters['additionalHeaders']; # $additionalParameters = $parameters['additionalParameters'];
# $success = mail($to, $subject, $messageBody, $additionalHeaders); # return $success; # } #} $TYPO3_CONF_VARS['EXT']['extList'] = |

Abhilfe:
Kontrollieren Sie ob Sie die CSS Datei im TypoScript vom Root Template angegeben haben.
|
# Erstellung des PAGE Objektes und Übergabe der voher erstellten „temp“ Objekte # des Dokumentes “temp.mainTemplate” und “temp.headTemplate” page = PAGE page { includeCSS { file1 = fileadmin/templates/css/ve_guestbook.css file1 { media = screen } file2 = fileadmin/templates/css/air_gallery.css file2 { media = screen } file3 = fileadmin/templates/css/rpw.css file3 { media = screen } file4 = fileadmin/templates/css/print.css file4 { media = print title = Druck-Stylesheet } } } |

Abhilfe:
Es dürfte sich hier um einen Fehler in den „Cache“ Dateien gehandelt haben. Nach nochmaligen löschen alle „Cache“ und der „temp_CACHE_*“ Dateien funktionierte plötzlich die neue Gästebuchseite einwandfrei.
Dies ist eine der meistverwendeten Extension unter TYPO3 zur Anzeige von Informationen.
· Extension zur Anzeige und Verwaltung von News Nachrichten.
· Arten von Nachrichten: Standard-News-Artikel, externe Links und Links auf internen Seiten.
· Volle Mehrsprachigkeits-(Multilanguage) Unterstützung mit TYPO3 seit Version 3.7.0.
· News-Artikel können zu jedem anderen und / oder der internen Seiten. Wenn zwei News-Artikel sind, der Link zu der Quelle Artikel automatisch eingefügt.
· Der Blick auf das komplette News-Artikel (Einzel-Ansicht) können auf mehrere Seiten aufgeteilt. Pagebreaks eingefügt werden können manuell durch eine benutzerdefinierte "pagebreak Token" oder nach einer bestimmten Anzahl von Wörtern.
· Alle Arten von Mediafiles können News-Artikel zugeordnet werden.
· Sehr flexible Nachrichten-Inhaltselement mit den folgenden Funktionen: Liste, Neuheiten, Archiv-Menü, Single-Ansicht, Suche, ein Menü aus verschachtelten Kategorien (CATMENU) und eine spezielle Art der Einzel-Ansicht: die "Preview-Version".
· Das Erscheinungsbild der News-Plugin auf der Website kann leicht geändert werden, indem Sie die HTML-Vorlage verwenden.
· CSS-basierte HTML-Templates enthalten.
· News Kategorien können den News zugeteilt werden (Mehrfachauswahl möglich). Kategorien können hierarchisch angelegt werden. In den News kann selektiert werden ob die zugteilte Kategorie oder die in der Hierarchie höhere Kategorie angezeigt wird.
· Neu in Version 3.0.1: Wenn die Extension „xajax“ installiert ist, können die Kategorie Bäume im Backend erweitert oder komprimiert werden. Bei einem großen Kategoriebaum ist dies sehr nützlich.
· Neu in Version 5.0.1: "tt_news Kategorie-Manager" ein Backend-Modul zur Verwaltung von News-Kategorien (unter Web-> Info). Es zeigt den kompletten Kategoriebaum - natürlich erweiterbar und komprimierbar - und bietet Drag-and-Drop zum Verschieben und Kopieren von Nachrichten Kategorien.
· Kategorie-Bilder oder Kategorie-Bezeichnungen können als Link zu einer speziellen Seite oder als Kategorieauswahl verwendet werden.
· Die Einzelansicht der News kann eine Liste der News anzeigen die derselben Kategorie zugeteilt wurden.
· In den Backend Kategorien kann die Zugriffsberechtigung für die News festgelegt werden. Eine Liste der erlaubten Kategorien kann einer Benutzergruppe zugeteilt werden. Wenn ein Benutzer versucht eine News zu bearbeiten die nicht in der Liste der Kategorien vorhanden ist, so kann er diese Änderungen nicht abspeichern.
· Eine interne Suchfunktion mit einen konfigurierbaren Suchfeld (kann mit einer Kategorieauswahl kombiniert werden das auf bestimmte Kategorien filtert).
· „Änderungssperre“: Durch Aktivieren des Kontrollkästchen "Beschränken der Bearbeitung von Nicht-Admins" („Restrict editing by non-Admins“) kann die die Bearbeitung von Newseinträgen für Nicht-Admin-Benutzer gesperrt werden.
· Automatische Archivierung von News, wenn eine festgelegte Anzahl von Tagen vergangen ist. Diese News werden dann automatisch in einer Archivansicht angezeigt. Es ist nicht notwendig das Archivdatum manuell einzugeben.
· Unterstützung für die „Caching“ und „Indexing“ Funktionen. Auch wenn das „Caching“ eingeschaltet ist werden die News von der Extension „Indexed Search“ indiziert.
· Unterstützt die direkte Vorschau mit dem „Save & View“ Button in einen News Datensatz (im Backend) wird direkt die Einzelansicht der News auf der Webseite geöffnet (siehe Seiten TSConfig).
· Verschiedene Möglichkeiten um Benutzerdefinierte Skripte für die Ausgaben zu verwenden.
· Unterstützt den Export in die folgenden XML-Feed-Formate: RSS 0.91, RSS 2, RDF Atom 0.3 und Atom 1.0.
· Unterstützt Versionierung für Nachrichten Aufzeichnungen (TYPO3> 3.7.0 und MySQL 4.x erforderlich). "Versionierung" Vorschau "wird mit einem speziellen Modus des tt_news Content Elements (VERSION_PREVIEW), die zur Verfügung stehen, wenn die Endung"-Version "installiert ist.
· "Kontext-sensitive Hilfe" (CSH) für alle Bereiche in der tt_news und tt_news_cat Backend Formen.
· Unterstützung für die Arbeitsbereiche (TYPO3 4.x erforderlich) Kompatibilität.
1. Holen Sie sich
die Extension „tt_news“ V3.0.1 vom Online-Repository.
2. Einstellungen
der „tt_news“ Extension bei der Installation:

(Ausschnitt)
3. Wenn die
Extension installiert ist, kopieren Sie die original HTML Template Datei
„tt_news_v2_template.html“ aus dem Verzeichnis „type3conf/ext/tt_news/pi/“(je
nach Installation) in das Verzeichnis „fileadmin/templates/html“ mit dem Namen
„tt_news_template.tmpl“.
4. Danach kopieren
Sie den Inhalt der original CSS Datei „tt_news_V2_styles.css“ aus dem Verzeichnis
„type3conf/ext/tt_news/res/“ in das CSS Verzeichnis mit dem Namen „fileadmin/templates/css/tt_news_styles.css“.
Ändern Sie die CSS-Definitionen nach Ihren Wünschen ab.
5. Als nächstes
beginnen wir mit der Anlage der Seiten. Legen Sie zuerst eine Seite „News“ an.
In dieser Seite legen Sie folgende Unterseiten mit Typ „Standard“ an:
Einzelansicht
Suche
Archiv
ArchivListe
Newseintrag à Diese Seite als Typ
„SysOrdner“ und unter Optionen „Enthält Plug-In“: „News“ auswählen.
6. Bei jeder dieser
Unterseiten wählen Sie „Im Menü verbergen“ aus.
![]()
7. Das ganze sollte
dann so aussehen:

8. Jetzt muss in
die einzelnen Seiten ein Inhaltselement als Plugin eingefügt werden. Klicken
sie zuerst auf die Hauptseite „News“ und legen Sie einen neuen Seiteinhalt
„Seiteninhalt anlegen“ an. Wählen Sie unter den Plugins „Nachrichten“ aus.
![]()
9. Im Seiteninhalt
klicken Sie auf den Reiter „Plug-In“. Unter den Erweiterungsoptionen
„Allgemeine Einstellungen“ klicken Sie bei „Ansicht“ das Objekt „LIST“ an.
Gehen Sie noch zur Auswahl „Archiveinstellungen (für LIST Ansicht)“ und wählen
Sie „Nur nicht-archivierte“ aus. Speichern und schließen vom Record.
Hinweis Wenn Sie am Ende der Newseinträge auch die
Auswahl für die Archive der Newsnachrichten anzeigen wollen können Sie zusätzlich
noch das Objekt „AMENU“ nach dem „LIST“ auswählen.

10. Als nächstes im Inhaltselement auf
den Reiter „Template“ klicken und den Eintrag unter „Template file reference“
entfernen.
Hinweis Im Reiter „Template“ wird standardmäßig das
Extension Template eingetragen „EXT:tt_news/pi/tt_news_v2_template.html“.
Wählen Sie hier Ihre eigene HTML Template Datei aus oder lassen Sie das Feld
leer wenn Sie die Template Datei über TS im Setup Bereich festlegen. Beachten
Sie, dass die Einträge hier, die Einträge vom TS Setup Bereich überschreiben.

11. Unter dem Reiter „Sonstige
Einstellungen“ können die Seite für die Einzelansicht von Newseinträgen und die
Rücksprungseite definiert werden. Da wir diese auch über TS im Setup Bereich
definieren, führen wird hier keine Veränderung durch.
12. Gehen Sie jetzt auf die Seite
„Einzelansicht“. Legen Sie wieder einen Seiteninhalt „Plugin einfügen“ und als
Erweiterung „Nachrichten“ an. Klicken Sie hier unter dem Reiter „Allgemeine
Einstellungen“ bei „Ansicht“ auf das Objekt „SINGLE“. Speichern schließen.

13. Gehen Sie jetzt zu der Seite
„Suche“. Wieder „Plugin einfügen“ und „Nachrichten“ auswählen.
Bei „Ansicht wählen wir hier das Objekt „SEARCH“. Speichern schließen.
14. Bei der Seite „Archive“ wird als
Objekt „AMENU“ ausgewählt.
15. Jetzt gehen wir auf die Seite
„ArchiveListe“ und wählen als Objekt „LIST“. Bei der Auswahl
„Archiveinstellungen (für LIST Ansicht)“ wählen wir „Nur archivierte“ aus.

16. Wir möchten unser News System
nicht über das Root-Template der Website verwalten. Damit haben wir die
Möglichkeit das News-Plugin innerhalb unserer Website nochmals mit geänderten
Einstellungen zu verwenden.
Zur Einrichtung eines statischen Untertemplates (Subtemplates) für unseren News
Bereich klicken wir auf die Seite „Aktuelle Meldungen“. Dann klicken wir auf
„Neu“ und wählen „Template“ aus. Als „Template Titel“ geben wir
„define.tt_news“ ein.

Hinweis Wenn Sie die News Anzeige auch außerhalb der
Seite „Aktuelle Meldungen“ verwenden möchten, dürfen Sie das Untertemplate
nicht im Haupttemplate (Root-Template) mit „Include basis template“ einfügen.
Fügen Sie im Haupttemplate anstatt dessen unter „Include static (from
extension)“ das „CSS-base tmpl (tt_news)“ ein (nur dieses wenn Sie ein eigenes
CSS verwenden).
17. Im „Constants“-Bereich des Haupt- oder Untertemplates wird folgendes eingefügt:
|
… # Page ID News: Die ID der Seite wo die News drin sind (Systemordner) pid_list = id1 # Page ID Singlenews: Die ID der Seite für die Einzelansicht (SINGLE) singlePid = id2 # Page ID Archive: Die ID der Seite wo das Archive drin (Seite „ArchivListe“) archiveTypoLink = id3 … |
Ersetzen Sie die Texte „id1“, id2“ und „id3“ durch Ihre vorher angelegte Seiten IDs.
18. Im „Setup“-Bereich des
Untertemplates wird zur Aktivierung folgendes eingefügt:
|
… #Pfad zum eigenen Template plugin.tt_news.file.templateFile = fileadmin/templates/html/tt_news_template.tmpl #Pfad zur eigenen CSS Datei page.includeCSS.file20 = fileadmin/templates/css/tt_news_styles.css # Variable dontUsebackPID wird auf 0 gesetzt plugin.tt_news.dontUseBackPid = 0 # Variable pid_list wird leer gemacht plugin.tt_news.pid_list > # PID wird über eine Konstante festgelegt plugin.tt_news.pid_list = {$pid_list} # Rekursiv, wenn die News in Unterordner sind plugin.tt_news.recursive > plugin.tt_news.recursive = 1 # UID der Seite Singleview plugin.tt_news.singlePid = {$singlePid} # Archive Aktivieren # UID der Archiveseite plugin.tt_news { archive = 1 datetimeDaysToArchive = 30 enableArchiveDate = 1 archiveTypoLink.parameter = {$archiveTypoLink} reverseAMenu = 1 } # Formatiere Datum Ausgaben der News plugin.tt_news.displayList.date_stdWrap.strftime = %A %d. %B %Y # Formatiere Alter Ausgabe der News plugin.tt_news.displayList.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e plugin.tt_news.displaySingle.age_stdWrap.age = Minuten| Stunden| Tage| Jahr/e … |
19. Auswahl des statischen Templates
im Haupttemplate (Root-Template) mit dem Standardnamen „NEW SITE“. Wählen Sie
unter „Include Static (from Extension)“ das Objekte „CSS-based tmpl (tt_news)“
aus. Speichern und schließen.

Hinweis Das Objekt „default CSS-styles (tt_news)“
würde nur benötigt werden wenn Sie keine eigene CSS Definition verwenden. Das
statische Template „News-feed (RSS,RDF,ATOM) (tt_news) wird später beschrieben.
20. Jetzt wieder zur Seite „News“
wechseln und unter „Seiteneigenschaften bearbeiten“ wird bei „Allgemeine
Datensatzsammlung“ der SysOrdner „Newseintrag“ eingefügt.

21. Sie können jetzt die Template (fileadmin/templates/html/tt_news_template.html) und die CSS Datei (fileadmin/templates/css/tt_news_styles.css) noch Ihren Bedürfnissen anpassen, oder die Anpassungen werden im „Constants“ oder „Setup“-Bereich vornehmen.
Wenn im „Extension Manager“ die Extension „tt_news“ für ein Update ausgewählt wird erscheint unter TYPO3 höher V4.3.99 folgender Meldung.

Klicken Sie auf „Ignore this version requirement“ und dann auf „Tray again“.
Erweiterte Einstellungen im „Constants“-Bereich welche durchgeführt werden können:
|
… plugin.tt_news.color1 =
#EEEEEE … |
Beispiel für Anpassungen im Setup Bereich für andere Schrift und Größe der News:
|
… # Formatiere Single View Titel plugin.tt_news.displaySingle.title_stdWrap.wrap = <font face="Arial, Helvetica, sans-serif" size="3" color="#000000"><strong>|</strong></font> # Formatiere Single View Inhaltstext plugin.tt_news.displaySingle.content_stdWrap.wrap = <font face="Arial, Helvetica, sans-serif" size="2" color="#000000">|</font> # Formatiere Single View Datum auf Kurzformat plugin.tt_news.displaySingle.date_stdWrap.strftime = %d.%m.%y # Formatiere Single View Subheader plugin.tt_news.displaySingle.subheader_stdWrap.wrap = <strong>|</strong> … |
Andere mögliche Einstellungen können Sie sich “TypoScript Object Browser” unter “tt_news” ansehen.
|
/*----------------------------------- clearer -----------------------------------*/ /* prevent floated images from overlapping the div-containers they are wrapped in */
.news-list-container HR.clearer, .news-single-item HR.clearer, .news-latest-container HR.clearer{ clear:right; height:1px; color: #BFBBD0; border:1px solid #BFBBD0; /* Farbe der Trennlinie zwischen den Newseinträgen und Zurück Link */ } .news-latest-container HR.clearer { clear:left; }
/*----------------------------------- tt_news LATEST view -----------------------------------*/
.news-latest-container { border:1px solid #BFBBD0; /* Farbe des äußeren Rahmens bei News LATEST Anzeige */ background-color:#BBE53A; /* Farbe des Hintergrundes bei News LATEST Anzeige */ }
.news-latest-container H2,.news-latest-gotoarchive { color:#fff; padding:3px; margin:3px; border:1px solid #BFBBD0; /* Farbe des Rahmens der Überschrift bei LATEST Anzeige */ background-color:#fff; /* Hintergrundfarbe der Überschrift bei der LATEST Anzeige */ }
.news-latest-gotoarchive { font-weight:bold; margin-top:5px; } .news-latest-gotoarchive A:LINK, .news-latest-gotoarchive A:VISITED, .news-latest-gotoarchive A:HOVER { color:#fff; /* Durch die Farbe #fff wird die Link Anzeige für Archiv ausgeblendet */ } .news-latest-gotoarchive A { color:#fff; /* Durch die Farbe #fff wird die Link Anzeige für Archiv ausgeblendet */ } .news-latest-item { /* IE hack */ height: 1%; line-height: 1.3; /* IE hack end */ height: auto !important; padding:3px; margin:3px; border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der LATEST Anzeige */ background-color:#fff; /* Hintergrundfarbe der Newseinträge bei der LATEST Anzeige */ }
.news-latest-item IMG { margin-bottom:5px; margin-right:5px; border:1px solid #BFBBD0; float:left; } .news-latest-category IMG { float: none; border:none; margin:0px; } .news-latest-date,.news-latest-morelink,.news-latest-category { font-size:9px; }
.news-latest-morelink { height:12px; }
.news-latest-morelink A { float:right; }
/*--------------------------------- tt_news LIST view -----------------------------------*/ .news-list-container { border:1px solid #BFBBD0; /* Farbe des äußeren Rahmens bei der News LIST Anzeige */ background-color:#fff; /* Farbe des Hintergrudne bei der News LIST Anzeige */ }
.news-list-item { /* IE hack */ height: 1%; line-height: 1.3; /* IE hack end */ height: auto !important; padding:3px; margin:3px; border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der LIST Anzeige */ background-color:#fff; /* Hintergrundfarbe der Newseinträge bei der LIST Anzeige */ }
.news-search-form { padding:3px; margin-bottom:5px; border:1px solid #BFBBD0; background-color:#fff; } .news-search-emptyMsg{ margin:0px; } .news-search-form FORM { margin:0px; } .news-list-container H2 { color: #333; /* Farbe der Überschriften von Newseinträgen bei der News LIST Anzeige */ margin-bottom: 5px; padding: 2px; border-bottom: 1px solid #BFBBD0; /* Farbe des Überschriftrahmens bei der News LIST Anzeige */ background-color: #BFBBD0; /* Farbe des Hintergrundes der Überschrift bei der News LIST Anzeige */ } .news-list-container H3 A:LINK,.news-list-container H3 A:VISITED,.news-list-container H3 A:HOVER { color:#fff; padding-left:2px; } .news-list-container H3 A { color:#fff; } .news-list-container P { padding-left:3px; } .news-list-date { float: right; padding: 1px 1px; color: #333; /* Schriftfarbe der Datumsanzeige bei der News LIST Anzeige */ width: 180px; text-align: right; height: 20px; font-size: 13px; font-weight: normal; }
.news-list-imgcaption { float: right; padding-top:3px; padding-right:3px; font-size: 9px; }
.news-list-container IMG { float: right; border:1px solid #BFBBD0; margin-bottom:5px; margin-right:2px; margin-left:5px; } .news-list-category IMG { float: none; border:none; margin:0px; }
.news-list-morelink,.news-list-category { font-size:11px; margin-left:3px; } .news-list-morelink { margin-bottom:3px; } .news-list-browse { text-align: center; }
/*--------------------------------- tt_news Page-Browser ---------------------------------*/ .tx-ttnews-browsebox { margin:3px; border:1px solid #BFBBD0; padding:3px; background-color:#fff; } .tx-ttnews-browsebox TD { font-size: 10px; } .tx-ttnews-browsebox-strong, .tx-ttnews-browsebox-SCell { font-weight: bold; } .tx-ttnews-browsebox-SCell P,.tx-ttnews-browsebox TD P{ margin:0px; }
.tx-ttnews-browsebox-SCell { background-color: #BBE53A; border:1px solid #BFBBD0; } .news-search-emptyMsg { font-size: 11px; margin-left: 10px; } /*--------------------------------- tt_news SINGLE view ---------------------------------*/ .news-single-item { height: auto !important; padding:5px; margin-bottom:5px; border:1px solid #BFBBD0; /* Farbe des Rahmens vom Newseinträgen bei der SINGLE Anzeige */ background-color:#fff; /* Farbe des Hintergrundes der Newseinträge bei der SINGLE Anzeige */
} .news-single-item H1 { font-size: 14px; font-weight:bold; color: #333; /* Farbe der Überschrift von Newseinträgen bei der SINGLE Anzeige */ margin-top: 5px; /* Abstand der Überschrift der Newseinträgen bei der SINGLE Anzeige */ margin-bottom: 0px; background-color: #BFBBD0; /* Farbe der Überschrift von Newseinträgen bei der SINGLE Anzeige */ } .news-single-item H3 { margin-bottom: 15px; }
.news-single-img { float: right; margin-left:5px; }
.news-single-imgcaption { padding:3px; clear:both; }
.news-single-category { float: right; } .news-single-backlink, .news-single-backlink a { font-weight: bold; font-size: 11px; margin-bottom: 15px; margin-top: 10px; } .news-single-timedata { float: right; } .news-single-timedata, .news-single-author,.news-single-imgcaption { font-size: 9px; } .news-single-author { padding-bottom: 3px; } .news-single-additional-info { background-color: #fff; /* clear: both; */ margin-top: 15px; border: 1px solid #BFBBD0; padding:3px; padding-bottom:0px; } .news-single-related,.news-single-files,.news-single-links { border: 1px solid #BFBBD0; margin:0px; margin-bottom: 3px; padding:3px; background-color:#fff; }
.news-single-related DD, .news-single-links DD, .news-single-files DD { margin-left:20px; }
.news-single-related DT, .news-single-links DT, .news-single-files DT { font-weight: bold; font-size: 11px; margin-left:5px; width:90%; }
/*--------------------------------- tt_news Archivemenu (AMENU) --------------------------------- */ .news-amenu-container { margin-top:10px; padding:3px; border:1px solid #333; background-color:#BBE53A; } .news-amenu-container LI { padding-bottom:1px; } .news-amenu-container UL { padding:3px; margin-top:5px; margin-left:0px; margin-bottom:0px; border:1px solid #BFBBD0; background-color:#fff; list-style-type: none; } .news-amenu-container H2 { color:#fff; padding:3px; border:1px solid #BFBBD0; background-color:#fff; } .news-amenu-item-year { font-weight: bold; border: 1px solid #BFBBD0; padding: 2px; background-color: #fff; color:#fff; }
/*--------------------------------- tt_news Categorymenu (CATMENU) --------------------------------- */
.news-catmenu { padding:5px; margin:10px 0px 10px 10px; border:1px solid #BFBBD0; background-color:#fff; } .news-catmenu-header { font-size:11px; font-weight:bold; } .news-catmenu DIV { font-size:10px; white-space: nowrap; } .news-catmenu DIV img { margin:0px; padding:0px; vertical-align: middle; } .news-catmenu-ACT { font-weight:bold; }
/* Styles for catmenu mode "nestedWraps" */ .level0 { background-color:#fff; } .level1 { padding-left:10px; background-color:#eee; } .level2 { padding-left:10px; background-color:#ddd; } .level3 { padding-left:10px; background-color:#ccc; } .level4 { padding-left:10px; background-color:#bbb; } |
Für die Anzeige von Monatsgruppen im Archiv-Menü geben Sie
folgendes im Setup Bereich vom Archiv (News) Template ein:
|
… plugin.tt_news { … # Detailanzeige der Archive verändern datetimeDaysToArchive = 31 archiveMode = quarter archiveTitleCObject > archiveTitleCObject = COA archiveTitleCObject { 10 = TEXT 10.field = start 10.strftime = %B 15 = TEXT 15.value = - 20 = TEXT 20.field = stop 20.strftime = %B %Y } … } … |
Wenn Sie die archivierten News
nur nach Jahren anzeigen wollen geben Sie folgendes im Setup Bereich vom Archiv
(News) Template ein:
|
… plugin.tt_news { … # Detailanzeige der Archive verändern datetimeDaysToArchive = 369 archiveMode = year archiveTitleCObject > archiveTitleCObject = COA archiveTitleCObject { 10 = TEXT 10.field = start 10.strftime = %B 15 = TEXT 15.value = - 20 = TEXT 20.field = stop 20.strftime = %B %Y } … } … |
Wenn Sie wollen das im Ordner „News“ in welchen die eigentlichen News Dokumente angezeigt werden nur mehr der Dokumententyp „News“ als einzige mögliche Auswahl angeboten wird, können Sie im „TSConfig“ diese Seite folgende Einstellung vornehmen.
|
… # Erlaubt ab dieser Seite nur mehr die Erstellung von tt_news Datensätzen mod.web_list_allowedNewTables = tt_news, tt_news_cat … |
Wenn Sie die Extension „realurl“ gelichzeitig mit „tt_news“ verwenden sollten Sie noch folgende Anpassungen vornhemen. Wenn Sie Autokonfiguration (Enable automatic configuration“ von RealURL verwenden sollten Sie folgende zeilen in den Setup Bereich des Root-Templates eintragen:
|
… # RealURL-Anpassungen für tt_news ################################# plugin.tt_news.useHRDates = 1 plugin.tt_news.useHRDatesSingle = 1 plugin.tt_news.useHRDatesSingleWithoutDay = 1 plugin.tt_news.dontUseBackPid = 1 … |
Wenn Sie einen Eignen RealURL Konfigurationsdatei verwenden, können Sie als Vorlage der Einstellungen für RealURL die Beispieldatei „realURL_example_setup.txt“ aus dem Verzeichnis „typo3conf/ext/tt_news/res/“ verwenden. Kopieren Sie den Inhalt in eine eigene Datei und passen Sie die Einstellungen an Ihre Konfiguration an. Kopieren Sie das Ergebnis dann in die Datei „realurl_conf.php“ im Verzeichnis „typo3conf“. Wenn in der Datei schon Einstellungen für RealURL vorhanden sind, dürfen Sie nur Ihre Änderungen einfügen, damit die vorhandene Konfiguration nicht zu zerstört wird.
|
$TYPO3_CONF_VARS['EXTCONF']['realurl']
= … ‘postVarSets’
=> array( ‘blog-post’ => array( … // news archive parameters ‘archive’ => array( array( ‘GETvar’ => ‘tx_ttnews[year]‘ , ), array( ‘GETvar’ => ‘tx_ttnews[month]‘ , ‘valueMap’ => array( ‘january’ => ‘01′, ‘february’ => ‘02′, ‘march’ => ‘03′, ‘april’ => ‘04′, ‘may’ => ‘05′, ‘june’ => ‘06′, ‘july’ => ‘07′, ‘august’ => ‘08′, ’september’ => ‘09′, ‘october’ => ‘10′, ‘november’ => ‘11′, ‘december’ => ‘12′, ) ), ), // news pagebrowser ‘browse’ => array( array( ‘GETvar’ => ‘tx_ttnews[pointer]‘, ), ), // news categories ’select_category’ => array ( array( ‘GETvar’ => ‘tx_ttnews[cat]‘, ), ), // news articles and searchwords ‘article’ => array( array( ‘GETvar’ => ‘tx_ttnews[tt_news]‘, ‘lookUpTable’ => array( ‘table’ => ‘tt_news’, ‘id_field’ => ‘uid’, ‘alias_field’ => ‘title’, ‘addWhereClause’ => ‘ AND NOT deleted’, ‘useUniqueCache’ => 1, ‘useUniqueCache_conf’ => array( ’strtolower’ => 1, ’spaceCharacter’ => ‘-’, ), ), ), array( ‘GETvar’ => ‘tx_ttnews[backPid]‘, ), array( ‘GETvar’ => ‘tx_ttnews[swords]‘, ), ), ), ), ), … ); |
Nach einen Update auf eine neue „tt_news“ Version kommt jetzt beim Link „Zurück zu:“ die Fehlermeldung „Keine news_id übergeben.“
Abhilfe:
Kontrollieren Sie Konfiguration der „tt_news“ Extension im Setup Bereich des Root Templates. Es sollte dort der Eintrag „plugin.tt_news.dontUseBackPid = 0“ vorhanden sein, wenn Sie keine spezielle Rücksprungseite verwenden.
Ursache:
Die Seite der „Einzelansicht“ wurde nicht mit Typ „Standard“ sondern als „SysOrdner“ definiert. Der Link auf „[mehr]“ wird nur gesetzt, wenn die Seite mit dem Inhaltselement News „SINGLE“ den Typ „Standard“ besitzt.
Abhilfe:
Ändern Sie den Typ der Seite „Einzelansicht“ auf „Standard“.
Der Link zur Rückkehr zu der News Liste wird sehr unschön
angezeigt, daher sollen die Zeichen „<_“ entfernt werden.
Abhilfe:
Installierren Sie eine neuere Version von „tt_news“.
![]()
Abhilfe:
Im “TypoScript Object Browser” finden Sie unter „tt_news“-„displayLatest“-„date_stdWrap“-„strftime“ den Eintrag „%A %d. of %B %Y“. Entfernen Sie den Eintrag „of“.
Sie können diese Einstellungen auch im Setup Bereich ändern durch:
„plugin.tt_news.displayLatest.date_stdWrap.strftime=%A %d. %B %Y”
![]()
Abhilfe:
Schreiben Sie folgende Zeilen in den Setup Bereich Ihres Templates
|
plugin.tt_news.displayList.age_stdWrap.age
= Minuten| Stunden| Tage| Jahr/e
|

Alles andere unter News wird in Deutsch angezeigt nur der die Pagebrowser Meldung kommt in Englisch.
Abhilfe:
Diese Ausgabe im Pagebrowser kommt nicht aus tt_news sondern aus TYPO3 direkt. Dafür wurde in TYPO3 keine Übersetzung eingebaut. Als Workaround kann folgendes in das den Setup Bereich des Template eingetragen werden.
|
plugin.tt_news._LOCAL_LANG.de.pi_list_browseresults_displays = News ###SPAN_BEGIN###%s bis %s von %s</span> |
![]()
Abhilfe:
Dies kann man leider nur im Code der Extension ändern (auf alle Fälle bis zur Version 2.2.24). Öffnen Sie die Datei „locallang.php“ aus dem Verzeichnis „/typo3conf/ext/tt_news/pi/“ und fügen Sie innerhalb des Bereiches „de“ folgende Zeile hinzu:
|
‚catmenuHeader’ => ‚Wählen Sie eine Kategorie’, |
Es wird in der Druckansicht als Drucktext „keine News-ID übergeben“ angezeigt (oder in Englisch „no news_id given“).
Abhilfe:
Siehe Kapitel Einrichtung von Druckversion mit „plugin.alt.print“
Es wird in der Druckansicht als Drucktext „keine News-ID übergeben“ angezeigt (oder in Englisch „no news_id given“).
Abhilfe:
Lösung: Print Link (extkey: as_printlink) verwenden und dann funktioniert es
|
Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to allocate 16 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146 |
oder
|
Fatal error: Allowed memory size of 26214400 bytes exhausted (tried to allocate 16 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146 |
Ursache:
Wenn Sie diese Fehlermeldung auf eine Server eines Provider erhalten, so hat dieser in der PHP Konfiguration die erlaubte Speicherauslastung für PHP auf „20971520“ oder „26214400“ Bytes eingeschränkt.
Abhilfe:
Auf einem lokalen Server erhöhen sie einfach in der „localconf.php“ das Memory Limit:
|
ini_set("memory_limit",'64M'); |
Bei einem Provider Server müssen Sie die Erweiterung des Speicherlimits beim Provider beantragen.
|
Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41 |
und im TYPO3 Install-Tool unter „Database Analyser“ mit „Compare with $TCA“ kommt

Ursache:
Im TYPO3 Install-Tool unter „All Configuration“ die Option „debugSQL“ aktivieren. Wenn danach unter Liste auf den SysOrdner für News geklickt wird erscheint folgendes.
|
caller |
t3lib_DB::exec_SELECTquery |
|
ERROR |
Table 'cms.static_taxes' doesn't exist |
|
lastBuiltQuery |
SELECT
count(*) |
|
debug_backtrace |
SC_db_list->main#451 // recordList->generateList#295 // localRecordList->getTable#268 // recordList->setTotalItems#397 // t3lib_DB->exec_SELECTquery#490 // t3lib_DB->debug#234 |
Abhilfe:
Wenn Sie zusätzlich vorher noch die Entfernen Sie die Extension „sr_static_info“ indem Sie auf die grüne Kugel klicken.
![]()
Klicken Sie dann auf „Remove extension“ um diese zu entfernen


Ursache:
Die tt_products_articles_language ist in tt_products 2.6.x noch nicht implementiert und deshalb auch fehlerhaft.
Abhilfe:
Es muss so geändert werden in der Datei „ext_tables.sql“ auf:
|
… # # Table structure for table 'tt_products_articles_language' # CREATE TABLE tt_products_articles_language ( … „article_uid int(11) DEFAULT '0' NOT NULL,“ … ); … |
Weitere Änderungen des Feldes „uid_article“ auf „article_uid“ in den Dateien:
„locallang_db.xml“
„ext_tables.php“
„tca.php“
Danach unter „Database Analyser“ unter „Update required tables“ den „COMPARE“ durchführen und die Änderungen übernehmen.
|
Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41 |
Ursache:
Wenn TYPO3 von einer vorherigen Version auf die Version 4.2.6 upgedatet wurde so kann es sein das die „static_info_tables“ noch immer in einer alten Version vorhanden ist z.B. 1.8.0 diese verträgt sich nicht mit der jetzt als System Extension inkludierten „static_info_tables_de“.
Abhilfe:
Update der Extension „static_info_tables“ durchführen.
![]()
Jedes Mal wenn der Captcha Text eingeben wird erscheint wieder die Eingabemaske. Wenn die Seite aktualisiert wird erscheint die folgende Fehlermeldung.

Ursache:
Im TYPO3 Template Browser zeigte sich das der Wert „use Captcha“ obwohl im Einrichtungsformular „captcha extension“ ausgewählt wurde, immer noch der Wert „0“ angezeigt wird.
Abhilfe:
Fügen Sie das Template für die News Seite folgenden TS ein:
|
… plugin.tx_comments_pi1.spamProtect.useCaptcha = 1 … |

Ursache:
Diese Meldung erscheint beim Einsatz der Extension „RealURL“ wenn bestimmte Seiten von der „tt_news“ Extension aufgerufen werden.
Abhilfe:
Kontrollieren Sie die Angabe zu Ihrer HTML Template Datei im Setup Bereich vom Template.
Der könnte auch bei fehlerhaften Einsatz von RealURL auftreten, kontrollieren Sie Ihre RealURL Konfigurationsdatei.
Mit dieser Extension ist es möglich den Webseitenbenutzer die Möglichkeit zu geben, dass diese zu den News Einträgen eigene Kommentare hinzufügen können.
Dabei wir die Liste der Kommentare und das Eingabeformular für die Kommentare angezeigt.
Die Extension hat einen Anti-Spam Schutz und unterstützt die Captcha Extension „captcha“ oder „sr_freecap“.
Die Extension ist sehr einfach aufgebaut und auch einfach einzurichten. Störend ist nur das die Sprachdatei „locallang.xml“ standardmäßig nur die englische Sprache enthält. Die deutschen Texte müssen in dieser Datei selbst angelegt werden.
1. Für die Installation der „comments“ Extension ist die Installation der
Extension „Universal page browser Extension key“ (pagebrowse) installiert werden.

2. Das statische Template „Commenting System (comments)“ zum Root-Template
hinzufügen.

3. Erstellen Sie auf der Seite „Einzelansicht“ (SINGLE) ein zusätzliches
Inhaltselement als „Allgemeines Plugin“ und wählen Sie „Commenting system“ als
Plugin aus.

4. Kopieren Sie aus dem Verzeichnis „typo3conf/ext/comments/res/“ die
Datei „pi1_template.html“ in Ihr HTML Template Verzeichnis mit den Namen
„tt_news_comments.tmpl“.
5. Kopieren Sie aus dem Verzeichnis „typo3conf/ext/comments/res/“ die
Datei „pi1.css“ in Ihr CSS Verzeichnis mit den Namen „tt_news_comments.css“.
6. Fügen Sie folgendes TypoScript in die das Template für die News Seite
ein:
|
##################################################### |
7. Führen Sie entsprechende Anpassungen der „tt_news_comments.tmpl“ und
der „tt_news_comments.css“ Datei durch.
8. Fügen Sie in die Datei „typo3conf/ext/comments/pi1/locallang.xml“ die
Anpassungen für die deutsche Sprache durch:
|
… </languageKey> <languageKey index="de" type="array"> <label index="error_too_many_spam_points">Dies Nachricht wird nicht versendet, das sie Spam sein könnte.</label> <label index="tt_content.list_type_pi1">Kommentarsystem</label> … <label index="no_page_browser"><strong>Warnung:</strong> Die Extension "pagebrowser" ist nicht vorhanden. Bitte installieren Sie die Extesnion "pagebrowser" und fügen Sie das Extension Template "Page Browser" zum Root-Template <strong>hinzu</strong> sowie das Extension Template von der 'comments' Extension. Siehe Beispiel unterhalb.</label> </languageKey> </data> … |
9. Danach sollte die Extension Funktionsfähig sein.
Comments: individual closing:
http://typo3.org/extensions/repository/view/comments_ic/current/
Mit
der Extension „comments“ können Sie zu tt_news Beiträgen Kommentare hinzufügen.
Sie ist standardmäßig so konfiguriert, dass sie mit tt_news arbeitet, so ist es
lediglich erforderlich, eine Instanz der Extension welche die Seite
„tt_news“-Plugin mit SINGLE Ansicht enthält hinzuzufügen. Eine Instanz der
Extension sollte in "Kommentare"-Modus, eine andere in
"Form"-Modus arbeiten. Das ist alles, es funktioniert also ganz
einfach!
Mit dieser Extension können Sie:
1. Kommentar zu tt_news Artikel hinzufügen
2. Kommentare automatisch nach einiger Zeit deaktivieren
3. Die Anzahl der Kommentare tt_news Artikel anzeigen.
Bei der Installation der Extension kommt folgende Meldung.

Danach kommt folgende Meldung klicken Sie auf „Make updates“.

Installieren Sie „comments_ic“ Erweiterung, diese fügt zwei neue Optionen zu tt_news „comments“ hinzu.
Deaktivieren Kommentare in tt_news Elementen komplett:
Schließen Sie Kommentare automatisch nach einen definierten Zeitraum
Zeitraum ist definiert durch einfache Syntax. Zum Beispiel bedeutet 5d 5 Tage, 1 m bedeutet 1 Monat und 3h Mittel, um Kommentare nach drei Stunden zu schließen.
Seiten-Caching wird berücksichtigt: comments_ic wird sichergestellt, dass Benutzer nicht sehen Kommentare zu bilden, wenn Kommentare sind geschlossen.
Zur Anzeige Anzahl der Kommentare für aktuelle News Artikel,
fügen Sie einfach
„###TX_COMMENTS_COUNT###“ Ihre tt_news Template. Das ist alles, was notwendig.
Die Anzahl der Kommentare wird sofort angezeigt. Dies funktioniert in LIST,
neuesten und tt_news SUCHE Anzeigemodi.
Eine andere Extension ist die „Inline Comment for tt_news“:
http://typo3.org/extensions/repository/view/lonewscomments/current/

Abhilfe:
Entfernen Sie den Zeilenumbruch und die Leerzeichen bei der Zeile, damit wieder „###CAPTCHA###...“ richtig angezeigt wird und speichern Sie die Datei ab.
· Diese Erweiterung ist „Frontend“-Dateimanager. Es ermöglicht „Frontend“ Benutzern die Verwaltung von lokalen Dateilisten.
· Der Einstiegspunkt der Dateilisten im „Backend“ nach Benutzergruppen konfigurierbar.
· Die Extension baut auf ein Konzept von sogenannten Mountpoints. Es kann eine unbegrenzte Anzahl von Mountpoints für die Dateilisten erzeugt werden. Jedem Mountpoint kann ein eigenes Verzeichnis zugeordnet werden.
· Die Extension kann entweder eine hierarchische Liste der Verzeichnisse und Dateien anzeigen, so vom Windows Explorer bekannt, oder alle Dateien eine Mountpoints in einem einzigen Verzeichnis.
· Dateien und können und downgeladen, umbenannt und Verzeichnisse erstellt, umbenannt und gelöscht werden.
1. Extension MOC
Fileshare manager (moc_filemanager) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und
musste zuerst downgeladen und aus der Datei installiert werden.

2. Wählen Sie
„Install extension“ und danach „Make Updates“ und „Update“ ausführen. Sie
können dabei einen Mountpoint für die Dokumentliste festlegen.
Hinweis Bei [Superroot] und [AutoDirCreation] keine
Änderungen vornehmen, also alles lassen, wie es ist.
3. Der erste
Schritt ist die Anlage einer neuen Seite „Filemounts“ als „SysFolder“ für die
Speicherung der Mountpoints. Es können darin mehrere Mountpoints erzeugt werden.
Der Pfad, muss auf ein physisches Verzeichnis auf dem Webserver verweisen.
Hinweis Befindet sich das angegebene Verzeichnis
außerhalb der TYPO3 Installation, so muss der Zugriff auf dieses Verzeichnis
für den Benutzer unter welchen der Apache Server läuft mit Schreibrechten
vergeben werden.
4. Auf dieser Seite
klicken Sie auf „Neu“ und wählen „Mount points“ um einen neuen Mountpoint zu
erstellen.
![]()
5. Geben Sie einen Namen
z.B. „TYPO3 Dokumente“ und das Verzeichnis z.B. „documents“ für den Mountpoint
ein.

Hinweis Bei „Relative path“ den Ordner angeben, der
unter dem Verzeichnis „fileadmin“ angelegt wurde. Das heißt in unseren Beispiel
muss unter „fileadmin“ ein Verzeichnis „documents“ existieren, in welchen die
Dateien abgelegt werden.
6. Als nächstes
erstellen Sie neue Seite „Dokumente“ als Typ „Standard“.
7. In dieser Seite
Erstellen Sie ein neues Inhaltselement mit der Auswahl „Allgemeines Plug-In“
und wählen im Reiter Plug-In „Filebrowser (Explorer) aus.
8. In den neu
angezeigten Feldern wählen Sie folgendes für einen Anzeige von Dokumenten aus.

9. Unter
„Template“-„Constant Editor“ wählen Sie „PLUGIN.FILEMANAGER“ aus und geben den
Pfad „fileadmin“ für das „Documentroot“ Verzeichnis ein.

Wählen Sie jetzt „PLUGIN.SHOW FILES“ und geben Sie auch hier den Pfad ein.

Speichern Sie die Einstellungen ab.
10. Die Anzeige der Dokumente sollte
so aussehen.

Sie können Die Anzeige von der Dateigröße und das Datum über eine CSS Datei
verändern.
11. Erstellen Sie eine CSS Datei im Verzeichnis „fileadmin/css“ mit dem Namen „moc_filemanager.css“ und geben Sie folgendes ein.
|
/* ** Version : 1.0 ** Datei : moc_filemanager.css ** Desc : MOC Fileshare manager ** Extension : moc_filemanager V0.8.1 ** Changes : 10.06.09 - pf - create file version */ /* CSS Document */
div.tx-mocfilemanager-pi1 table#contenttable td { font-size: 10px; padding:0; }
div.tx-mocfilemanager-pi1 .borderbottom { }
div.tx-mocfilemanager-pi2 .filelink { font-family: Verdana; font-size: 12px; color: #000033; text-decoration: none; } div.tx-mocfilemanager-pi2 .filelink:hover { text-decoration: underline; } div.tx-mocfilemanager-pi1 .filelink img { margin-right: 5px; }
div.tx-mocfilemanager-pi2 .info { font-family: Verdana; font-size: 10px; color: #000033; font-weight: normal; } |
12. Fügen Sie die CSS Datei im Setup Bereich Ihres Root-Template hinzu.
|
… page.includeCSS.file1 = fileadmin/templates/css/ve_guestbook.css page.includeCSS.file2 = fileadmin/templates/css/moc_filemanager.css page.includeCSS.file3 = fileadmin/templates/css/rpw.css … |
Ursache:
In „Constant Editor“ wurde der Pfad für das „Documentroot“ Verzeichnis nicht angepasst.
Abhilfe:
Unter „Template“-„Constant Editor“ wählen Sie „PLUGIN.FILEMANAGER“ aus und geben den Pfad „fileadmin“ für das „Documentroot“ Verzeichnis ein. Dasselbe führen Sie unter „PLUGIN.SHOW FILES“ aus.
Abhilfe:
Die Dateilänge in der Anzeige wird über die konstante „crop_filename“ gesteuert und steht standardmäßig auf „45“ Zeichen. Sie können durch erhöhen diese Wertes die Anzeige des Dateinamens verlängern.
Digital Asset Management System (DAM) System ist ein Werkzeug, um digitale Inhalte wie Bilder, Text-Dateien und praktisch jedes beliebige andere Dateiformat zu verarbeiten.
Diesen Medien-Dateien können mit Meta-Informationen zusätzliche Informationen zugeordnet werden. Diese Informationen können den Inhalt beschreiben (Beschreibung, Schlüsselwörter, Standort), technische Daten (Bildgröße) oder Copyright-Informationen zum Beispiel. Alle diese Informationen können verwendet werden, um die Dateien zu verwalten, zu finden oder in Mediengruppen zu kategorisieren.
Zwei maßgebliche Kräfte führten zur Notwendigkeit einer fortgeschrittenen Verwaltung solcher Dateisammlungen:
Das Digital Asset Management für TYPO3 wurde entwickelt, um die wachsende Nachfrage nach professionellen Dateisammlungsverwaltung in TYPO3 Anwendungen durchzuführen und eine Implementierung zu vereinfachen. Auch wenn die ersten finalen Versionen noch kommen werden im Moment die Vorab-Versionen der Extension in verschiedenen Produktions-umgebungen verwendet.
Die DAM Extension ist vergleichbar mit dem File-Modul das im TYPO3 Backend als
Haupt-Modul integriert ist. Es wird später wenn die Extension „Final“ ist, dass
File-Modul und die komplette Dateiverwaltung wie Kopieren, Löschen und
Umbenennen von Dateien ist zu ersetzen. Dennoch verwendet DAM keinen neuen
Speicher-Typ zum Speichern der Dateien. Die Dateien werden in das Dateisystem
nach wie vor gespeichert.
1. Extension „dam“
installieren vom Online Repository durch klicken auf das Seitensymbol mit dem
roten Pfeilchen.
![]()
2. Es kommt danach
folgende Anzeige. Durch klicken auf „Install extension“ wird die Extension
installiert.

3. Sollte die
Extension „static_info_tables“ nicht installiert sein, so wird ein „DEPENDENCY
ERROR“ angezeigt. Durch klicken auf den Text „Import now“ wird ein neues
Fenster geöffnet in welchen die Extension importiert Das Fenster wieder
schließen mi „Close Windows an check dependencies“.

4. Nach schließen
des Fensters wird unter dem Text „static_info_tables“ der Text
„Install now“ angezeigt. Durch klicken auf den Text wird wieder ein neues
Fenster geöffnet.

5. Es kann auch
sei, dass die Abhängigkeit der Extension von der TYPO3 Version nicht erfüllt
werden.

In diesen Fall müsste zuerst die TYPO3 Version auf mindestens 4.2.10 upgedatet
werden.
6. Es werden
mehrere Tabellen für die Extension angezeigt, welche mit „Make updates“
angelegt werden. Danach das Fenster wieder schließen mit „Close Windows an
check dependencies“.
7. Wenn Sie jetzt
auf „Try again“ klicken sollten die notwendigen Tabellen für die Extension
„dam“ angezeigt werden. Mit klicken auf „Make updates“ werden die Tabelle
angelegt.
8. Es werden
zusätzliche Optionen für die Konfiguration angezeigt. Durch klicken auf
„Update“ wird die Konfiguration übernommen.

9. Danach sollte in
der Navigation (nach einen Refresh) ein neues Modul „Media“ angezeigt werden.

Die Indexierung in DAM kann mit der Zeit, immer dann wenn sehr viele Änderungen am Verzeichnisbaum der Dateien durchgeführt werden, außer Takt kommen. Das heißt neue Dateien werden nicht Indexiert oder es sind noch immer alte Dateien oder Verzeichnisse Indexiert welche nicht mehr vorhanden sind.
Dafür gibt es in der Navigation unter „MEDIEN“ den Menüpunkt „Werkzeuge“. Mit diesem Menüpunkt können Sie die Indexierung aktualisieren, alte Einträge löschen, hochgeladne Dateien erfassen, etc.
Das gelbe Rufzeichen neben dem Datei Icon zeigt an das die Datei nicht indexiert wurde
.

Analyse:
1. Wenn der Upload der Media Dateien, nicht durch den Admin durchgeführt wurde, sondern durch einen anderen Backend oder Frontend Benutzer, sollten die Berechtigungen vom Benutzer oder der Gruppe kontrolliert werden.
2. Die Extesnsion „dam“ hatte noch keine Zeit die Indizierung der Dateien durchzuführen.
Behebung:
1. Geben Sie den Benutzer oder der Benutzergruppe dir Berechtigungen auf die „DB Mounts“ von „Dateien“ und „Media“.
2. Klicken Sie im Backend in der Navigation nochmals unter „Media“ – „Datei“ (List) auf den entsprechenden Ordner und warten Sie bis die gelben Rufzeichen verschwinden.
Der nach folgende Fehler kommt entweder auf jeder Seite oder wenn in der Navigation „Erweiterung“ ausgewählt wird.
|
Fatal error: Class 'tx_dam' not found in /srv/www/htdocs/rpw/typo3conf/temp_CACHED_ps2038_ext_tables.php on line 2995 |
Ursache:
Eventuell haben Sie versehentlich die DAM Extension deinstalliert, obwohl einige Extension Ihrer Website auf diese Extension aufbauen.
Abhilfe:
Fügen Sie in Ihre „localconf.php“ im Verzeichnis „typeo3conf“ zu der Zeile „$TYPO3_CONF_VARS['EXT']['extList'] =“ den Eintrag „dam“ hinzu.
Löschen Sie alle Dateien aus dem Verzeichnis „typo3conf“ welche den Text „CACHE“ enthalten. Das Backend sollte jetzt wieder funktionieren.
Wählen Sie jetzt in der Navigation im Backend „DB-Überprüfung“ und führen sie danach ein Update der Indexdateien mit „Referenzindex aktualisieren“ durch.

Löschen nochmals alle Dateien aus dem Verzeichnis
„typo3conf“ welche den Text „CACHE“ enthalten. Klicken Sie danach im Backend auf
das das Symbol
und
wählen Sie „Alle Cache löschen“ aus.
Alle Seiten welche mit der Extension „Frontend Filemanager“ (air_filemanager) arbeiten bringen den Fehler.
Ursache:
Der Fehler wurde durch einen vorherigen „dam“ Fehler ausgelöst. Im Moment bringt jede Seite welche als Plugin die Extension „air_filemanager“ verwendet den Fehler.
Abhilfe:
Die Extension „Frontend Filemanager“ (air_filemanager) über den Extension Manger „Erweiterung“ deaktivieren und danach wieder installieren.

![]()
Ursache:
Eine Ursache könnte sein, dass Sie über das TYPO3 Install
Tool oder direkt in die „localconf.php“ die Option „[SYS][setDBinit]“ mit folgende
Einstellungen vorhanden ist:
|
SET NAMES utf8; SET CHARACTER SET utf8; SET SESSION character_set_server=utf8; |
Behebung:
Entfernen Sie den Eintrag „SET SESSION character_set_server=utf8;“ oder wenn notwendig auch noch den Eintrag „SET CHARACTER SET utf8;“
Beim Versuch eine PDF Datei über „Media“ – „File“ upzuloaden kommt nachfolgende die Fehlermeldung "No File was uploaded!" und danach „File size exeeded? (8.0M)“.

Ursache:
In der Datei „php.ini“ ist „upload_max_filesize=20M“
eingestellt im TYPO3 Install Tool unter „All Configuration“ bei der Option
„[maxFileSize]“ ist „10240“ (KB) eingestellt. Die Datei hat aber nur 1MB Größe,
an diesen Einstellungen kann es also nicht liegen. Wichitg ist hier die
„Messages:“ welche „Write-permission problem“ andeutet. Eventuell liegen zu
wenig Berechtigungen für den Upload auf diesem Verzeichnis vor.
Es könnte ein Problem mit dem Mime-Typ der Datei vorliegen. Im TYPO3 Install-Tool
unter „[form_enctype]“ steht „application/x-www-form-urlencoded“.
Behebung:
Kontrollieren Sie die Berechtigungen des Verzeichnisses mit
„ls –l“ (oder FTP Client).
Setzen Sie den Owner mit „chown -R wwwrun:ftp fileadmin/“ und die
Berechtigungen mit „chmod -R 770 fileadmin/“
Kontrollieren Sie im TYPO3 Install-Tool unter „[form_enctype]“ ob der Wert auf „multipart/form-data“ steht.
Nach dem Upload von Dateien in ein Uneterverzeichnis von „fileadmin“ welche über die „air_filemanager“ (oder „dam“) Extension im Frontend angezeit wird. Werden Die Umalute im Dateinamen nur mit Sonderzeichen angezeigt.

oder im Backend kann zwar der Titel berichtig werden aber der Dateiname ist ohne Umlaute.

Ursache:
Dieser Fehler wurde erste nach Übersiedlung der Website von einem lokalen Server auf ein TYPO3 Website bei einem ISP festgestellt.
Abhilfe:

Im TYPO3 Install Tool „Basic Configuration“ wird die Datenbank mit „NO ACCESS“ angezeigt.

Dies bedeute die Datenbank ist nicht mehr vorhanden. Anstatt der ausgewählten Tabelle zu löschen wurde die ganze Datenbank gelöscht.
Datenbank manuelle anlegen im „phpMyAdmin“ anlegen.

Datenbank Rücksicherung durchführen im „phpMyAdmin“.

Diese Erweiterung bietet Downloads und Uploads von Dateien im DAM über das Frontend an. Der Benutzer kann seine Downloads sehr komfortabel durch einen Kategorie-Baum auswählen.
Außerdem erlaubt diese Extension die Bereitstellung von Dateien über "pushfile.php", so dass der „fileadmin“ Ordner durch eine „.htaccess“-Datei gesichert werden kann. Die DAM Datensätze können über das Frontend editiert werden.
Eine zweiter Plugin ("DAM Frontend Liste") zeigt eine Liste von Dateien an (diese können manuell von einem Backend-Benutzer ausgewählt werden).
Diese Erweiterung sollte von Leuten verwendet werden, die die Notwendigkeit haben, eine große Anzahl von Dateien im DAM Aufzubewahren, damit diese dann heruntergeladen werden können. Außerdem werden alle Dateien angezeigt / heruntergeladen aus den ursprünglich DAM-Dateien. Dadurch müssen keine Dateien in den Medien „media/uploads“ Ordner kopiert werden.
WICHTIG Alle Versionen unter der Version „0.6.5“ haben eine Sicherheitslücke für SQL Injection Angriffe.
1. Vorbreitet dazu
müssen folgende Extensions installiert sein „static_info_tables“ und die
Extension „dam“.
2. Installieren Sie
die Extension „dam_frontend_0.6.6.t3x“ über den „Extension Manager“ entweder
über das Online Repository oder von einer lokalen Datei.
3. Bei der
Installation wird angezeigt, dass 5 Tabellen angelegt und einige Felder zur
„dam_cat“ hinzugefügt werden. Klicken Sie auf „Make updates“.
4. Wählen Sie aus
der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den
Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click
here to edit whole template record“ und wählen Sie danach den Reiter „Include“
aus. Fügen Sie das statische Template „DAM Frontend (dam_frontend)“ und eines
der Layout Templates wie hier z.B. „DAM Frontend Filelist (dam_frontend) dem Root-Template
hinzu.

5. Als HTML Vorlagen steht eine für „DAM Frontend“ (typo3conf/ext/dam_frontend/pi1/) und eine für „DAM Frontend Dateiliste“ zur Verfügung Wir verwenden hier die „DAM Frontend Dateiliste“. Kopieren Sie die HTML-Vorlagedatei „tmpl_list.html“ aus dem Verzeichnis „typo3conf/ext/dam_frontend/res/“ in Verzeichnis „fileadmin/templates“ mit dem Namen „dam_fe_list.tmpl“.
6. Auch bei den CSS Dateien Vorlagen steht eine für „DAM Frontend“ (typo3conf/ext/dam_frontend/pi1/) und mehrere für „DAM Frontend Dateiliste“ zur Verfügung Wir verwenden hier CSS Datei für die „DAM Frontend Dateiliste“. Kopieren Sie die CSS-Vorlagedatei „styles.css“ aus dem Verzeichnis „typo3conf/ext/dam_frontend/res/“ in Verzeichnis „fileadmin/css“ auf den Namen „dam_fe_list.css“. Ändern Sie die CSS Dateien entsprechend Ihren Bedürfnissen ab.
7. Im Setup Bereich des Root-Templates muss für die „DAM Frontend Filelist“ folgendes Eingetragen werden damit die eigen HTML-Vorlagedatei und die CSS Datei verwendet wird:
|
plugin.tx_damfrontend_pi2 { … page.includeCSS.file32 = fileadmin/templates/css/dam_fe_list.css … |
Hinweis: Bitte, beachten Sie das bei “DAM Frontend“ diese Einträge anders aussehen müssen, da dort eine andere HTML Vorlage und CSS benutzt wird.
8. Legen Sie danach
eine neue Seite oder gehen Sie zu einer vorhandenen Seite. Als
Seiteninhaltselement wählen Sie „DAM Frontend Dateiliste“ aus.
![]()
9. Es wird jetzt
die Konfigurationsseite für das Plugin angezeigt. Ändern Sie die Optionen wie
gewünscht ab und Speichern Sie den Datensatz.

10. Sie können den Zugriff auf den
Ordner „fileadmin“ (oder einen Unterordner) über eine „.htaccess“ Datei
schützen.
Erstellen Sie dazu eine „.htaccess“ Datei im Ordner „fileadmin“ mit folgenden
Inhalt:
Order deny,allow
Deny from all
WICHTIG Dabei können
aber Probleme auftreten, wenn Sie direkte Links auf den “fileadmin“ Ordner
verwenden. Dies könnten z.B. für die CSS Dateien der Fall sein. In diesen Fall
wird dann, das Design der Webseite zerstört. Außerdem können Sie keine Dateien
aus den geschützten Ordner im Backend anzeigen, weil das Backend direkte Links
verwendet.
![]()
Ursache:
Sie haben die statischen Template für DAM Frontend nicht in das Root-Template der Seite eingebunden oder der Verweis auf eine eigenes HTML Template ist falsch.
Abhilfe:
Wählen Sie aus der Navigation „Template“ und selektieren Sie aus dem
Verzeichnisbaum den Eintrag in welches sich ihr Root-Template befindet. Klicken
Sie dann auf „Click here to edit whole template record“ und wählen Sie danach
den Reiter „Include“ aus. Fügen Sie das statische Template „DAM Frontend
(dam_frontend)“ und eines der Layout Templates wie hier z.B. „DAM Frontend
Filelist (dam_frontend) dem Root-Template hinzu.
Kontrollieren Sie wenn Sie ein eigenes HTML Template
verwenden die Pfadangabe und den Dateinamen zu dem HTML Template.
Diese Extension nutzt die „dam“ Extension um die Meta-Daten für die Dateien zu speichern.
Diese Extension zeigt die Dateien aus dem DAM Tabelle in verschiedenen Ansichten. In der Beschreibung dieser Extension werden einige Beispiele dafür angezeigt.

Sie können diese Dateien herunterladen - entweder gezippt oder normal.
Wenn ein FE-User angemeldet ist, wird protokolliert welche Datei dieser downgeladen hat.
Die LOG-Datei ist im CSV-Format und wird im Ordner „fileadmin/log/“ erstellt. Der Name der Datei ist: „damuserinfo_<aktuelles Jahr><current_month>.Log.csv
1. Vorbreitet dazu
müssen folgende Extensions installiert sein „static_info_tables“, „dam“, „dam_catedit“.
2. Wichtig ist das
Sie jetzt die Extension „MM ECL – ExtensionClassLibrary” (mm_bccmsbase) installieren.
3. Nun sind wir
bereit die Extension „mm_dam_filelist_2.0.3.t3x“ zu installieren.
4. Installation in
„Extension Manager“ direkt mit der Datei durchführen und auf „Install
Extension“ klicken.
5. Durch klicken
auf „Make updates“ werden einige Felder der Tabelle „tc_dam“ hinzugefügt und
eine neue Tabelle angelegt (tx_mmdamfilelist_additionalinfo).
6. In der
CONFIGURATION können Sie die Benutzung der „tt_address“ und RelURL Extension
aktivieren. Klicken Sie danach auch „Update“.

7. Wählen Sie aus
der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den
Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click
here to edit whole template record“ und wählen Sie danach den Reiter „Include“
aus. Fügen Sie das statische Template „MM DAM-Fiellist (mm_dam-filelist)“ und
eines der Layout Templates wie hier z.B. „MM DAM Layout II (CSS-styles)
(mm_dam_filelist) dem Root-Template hinzu.

8. Wichtig legen
Sie jetzt Kategorien für DAM an. Die Extension funktioniert nicht wenn Sie
keine Kategorien für DAM angelegt haben.
Die Kategorien können Sie anlegen indem Sie im Seitenbaum auf das „Media“ Icon
klicken und „Neu“ auswählen. Danach wählen Sie „Media Kategorie“ aus.

9. Legen Sie danach
eine neue Seite oder gehen Sie zu einer vorhandenen Seite. Als Seiteninhalt
wählen Sie „Allgemeines Plug-In“ aus. Im Reiter Plugin wählen sie dann „MM DAM
FE Filelist“ und bestätigen diese Änderung.

10. Es wird jetzt die
Konfigurationsseite für das Plugin angezeigt. Ändern Sie die Optionen wie
gewünscht ab und Speichern Sie den Datensatz.

11. Für die automatische Erzeugung von einen Kategorie-Menü fügen sie folgendes im Setup Bereich des Root-Templates ein:
|
… page.10.subparts.navi_dam_cat < plugin.tx_mmdamfilelist_pi1.catTree … |
Wenn der Kategoriebaum nicht vom Root-Element
starten soll fügen Sie zusätzlich noch folgendes im Setup Bereich des Root-Templates
ein:
|
… plugin.tx_mmdamfilelist_pi1.catTree.startuid = <id1> … |
Anstatt <id1> geben Sie die ID der Kategorie ein bei welcher gestartet wird.
Diese Extension nutzt die „dam“ Extension um die Meta-Daten für die Dateien zu speichern.
Der Hauptzweck dieser Erweiterung ist für die Verwendung in Online-Communities. Jeder FE‑Benutzer kann seine eigenen Dokumente hochladen, um sie mit anderen zu teilen und bearbeiten.
Außerdem kann diese Extension ausgezeichnet zur Verwaltung
von Online Dokumenten verwendet werden. Es gibt eine große Anzahl von Feldern
für Meta-Daten die jedem Dokument hinzugefügt werden können. Die FE-Anzeige
kann über Templates den eigenen Anforderungen angepasst werden.
Hinweis Außerdem erzeugt die Extension keine Cache
Einträge (no_cache=1), daher werden Dokumente über den Indexed Search „Crawler“
nicht indiziert. Sie könnte sich da nur mit der Extension „air_fefilelist“
weiterhelfen.
1. Vorbreitet dazu
muss natürlich die Extension „dam“ schon installiert sein.
2. Download der
Datei „air_filemanager_0.9.27“ vom Repository durchgeführt.
3. Installation in
„Extension Manager“ direkt mit der Datei durchführen.
WICHTIG Wenn Sie die
Extension „dam“ nicht schon vorher installiert haben, kann es zu einem
allgemeinen Fehler auf der TYPO3 Seite kommen mit „Seite kann nicht angezeigt
werden (HTTP 500)“. Um diesen zu beheben müssen Sie den Eintrag
„air_filemanager“ wieder aus der Datei „typo3conf/localconf.php“ entfernen.
4. Es kommt danach
folgende Anzeige. Durch klicken auf „Install extension“ wird die Extension
installiert.
5. Es werden
mehrere Tabellen für die Extension angezeigt, welche mit „Make updates“
angelegt werden.
6. Wählen Sie aus
der Navigation „Template“ und selektieren Sie aus dem Verzeichnisbaum den
Eintrag in welches sich ihr Root-Template befindet. Klicken Sie dann auf „Click
here to edit whole template record“ und wählen Sie danach den Reiter „Include“
aus. Fügen Sie statische Template „Filemanager (air_filemanager)“ dem Root-Template
hinzu.

7. Im Root-Template
„Setup“ Bereich wurde folgendes angehängt:
|
… # Template Einstellung für air_filemanager … |
Damit wird das Root Verzeichnis
für den Filemanager auf „fileadmin/“ festgelegt.
Als DAM Media Verzeichnis wird „Media“ festgelegt, dieser Name wird in der
mittleren Auswahlleiste von TYPO3 angezeigt.
8. Legen Sie danach
eine neue Seite an oder gehen Sie zu einer vorhandenen Seite. Als Seiteninhalt
der Plugin „Filemanager“ ausgewählt. Als Verzeichnis wird „documents“ und als
Mode „Homepage“ angegeben.
Damit wird das Verzeichnis „documents“ an das Rootverzeichnis „fileadmin/“
angehängt.

9. Klicken Sie auf
dieser neuen Seite auf das Symbol und wählen Sie „Neu“. Danach wird der
Seitentyp „Filemanager Verzeichnisse“ anklicken.

10. Die
standardmäßige HTML Template Datei wir mit folgenden Befehlen in das eigene
Template Verzeichnis kopiert.
SLES11:~ # cd
/srv/www/htdocs/<yourwebsite>
SLES11:~ # cp typo3conf/ext/air_filemanager/pi2/filelist.css fileadmin/templates/html/air_filelsit.tmpl
11. Die Anpassung der der HTML
Template Datei könnte wie folgt aussehen, wenn nur eine Anzeige der Dateien
ohne Upload oder Bearbeitung geplant ist:
|
<html> <body> <div class=”air_filemanager”> <!-- ###FILELIST### -->
###DISPLAYAREA### <div class="displayarea"> <!-- ###TITLEROW### --> … </div> </html> </body> |
12. Geben Sie im Setup Bereich vom Root-Template
folgendes für den Aufruf ihres eigenen HTML Template ein:
|
… # Template Einstellung für air_filemanager plugin.tx_airfilemanager_pi1.template = fileadmin/templates/html/air_filelist_de.tmpl … |
13. Die standardmäßige CSS Datei wir
mit folgenden Befehlen in das eigene Style Verzeichnis kopiert.
SLES11:~ # cd
/srv/www/htdocs/<yourwebsite>
SLES11:~ # cp typo3conf/ext/air_filemanager/pi2/gallery.css fileadmin/templates/css/air_gallery.css
Geben Sie im Setup Bereich vom Root-Template folgendes für den
Aufruf ihrer eigenen CSS Datei ein:
|
… page.includeCSS.file11.fmgallery = fileadmin/templates/css/air_gallery.css … |
14. Danach können Sie die HTML Datei
je nach Belieben formatieren dies könnte wie folgt aussehen:
|
.tx-airfilemanager-pi1 { font-family: arial,sans-serif; font-size:11px; }
.tx-airfilemanager-pi1 table tbody tr th { text-align:left; }
.tx-airfilemanager-pi1 table tbody tr td { text-align:left; }
.tx-airfilemanager-pi1 table tbody tr th.col4 { text-align:right; } .elem { width:150px; float:left; } .row { clear:left; } .tx-airfilemanager-pi1 .col3 {
} .tx-airfilemanager-pi1 .col5 { text-align:right; } .tx-airfilemanager-pi1 .col6 { text-align:right; } |
15. Die Anzeige von Dokumenten mit
einem eigenem Template könnte dann so aussehen:

Die Sortierung der Filelsite wurde auf Datumssortierung umgestellt.
Im Setup Bereich des Root Templates wurde folgende eingetragen:
|
… # Template Einstellung für air_filemanager plugin.tx_airfilemanager_pi1 { template = fileadmin/templates/html/air_filelist_de.tmpl sortconf { separated = 1 default = crdate # andere Sortierungen: name storeInSession = 1 } } … |
Wie der Name schon sagt können damit wechselnde Image Bilder auf einer TYPO3 Seite eingefügt werden.
Funktionalitäten:
· Unterstützung für Flash Dateien (*.flv)
· Unterstützung von selbsterstellten Flash-Diashows mit ext: „slideshow“
· Flash-Erkennung basiert auf der "UFO" - unaufdringliche Flash-Objekte (siehe ufo.js für weitere Informationen über UFO)
· Unterstützung für animierte GIFs (Seien Sie vorsichtig mit Größenänderung /-sampling!)
· Die meisten gängigen Bildformate werden unterstützt (JPG, GIF, PNG, ...)
· Bilder können im Zusammenhang mit internen und externen Seiten.
· Veröffentlichen von Bildern und Flash – mit Timer.
· Veröffentlichen von Bildern und Flash per Klicks - Zähler!
· Veröffentlichen von Bildern und Flash per Ansichten - Zähler!
· Row-Modus für die Anzeige von Bannern (random, alle).
· Vollständige Vorlage Unterstützung!
· Sie können es direkt in Typoskript (mein bevorzugter Modus) oder einfach als Plugin auf der Seite.
· Banner können in drei Gruppen von Positionen (oben, unten, links, rechts) erstellt werden.
1. Extension
Mailform (ric_rotation) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren und
musste zuerst down geladen und aus der Datei installiert werden.
2. Wählen Sie
„Install extension“ und danach „Make Updates“.
3. Kopieren Sie
Ihre vorgesehenen Banner-Rotationsbilder in den Ordner
„fileadmin/images/banner/“.
4. Erstellen Sie jetzt
eine neue Seite im Verzeichnisbaum mit Namen „Rotation Images“ als Typ
„SysOrdner“.
5. In dieser SysOrdern
erstellen Sie jetzt Ihre Bannerbilder indem Sie „Neu“ und Auswahl „Rotationsbild“
klicken.

6. Geben Sie unter
Beschreibung einen Namen für das Rotationsbild ein. Der Bannertyp ist in diesen
Fall „Bild“, da es sich um ein Bild handelt.

7. Klicken Sie dann
auf den Reiter „Bannergrafik“ und wählen Sie eine Grafik aus dem Verzeichnis
„fileadmin/images/banner/“ aus und klicken Sie auf Speichern.

8. Führen Sie diese
Schritte 5-7 für alle Ihre vorhandenen Rotations Bilder durch.
Hinweis In einer Multilanguage Umgebung müssen Sie
die Bilder a
9. Im Setup Bereich
vom Root-Template folgendes eingeben.
|
# Erzeugen eines “temp” Objektes für den BODY des HTML Dokumentes # Übergabe der Inhaltselemente an die Subparts des Dokumentes temp.mainTemplate = TEMPLATE temp.mainTemplate { template =< plugin.tx_automaketemplate_pi1 workOnSubpart = DOCUMENT_BODY … subparts.banner < plugin.tx_ricrotation_pi1 subparts.banner { placement=top mode=random pidList=20 recursive=0 image.file.maxW=750 image.file.maxH=110 } … } … |
10.



|
Warning: filemtime() [function.filemtime]: stat failed for /home/.sites/112/site415/web/uploads/tx_ricrotation/banner15.jpg in /home/.sites/112/site415/web/t3lib/class.t3lib_befunc.php on line 1731 |
Und das Eingabefenster wir auf eine Zeile komprimiert:

Ursache:
Die Extension kopiert alle hinzugefügten Bilder in das Verzeichnis „uploads/tx_ricrotation“ und sucht diese auch dort. Wenn Sie eine Sicherung und Rücksicherung durchgeführt haben kann es sein das die Bilder dort nicht mehr vorhanden sind.
Abhilfe:
Kopieren Sie einfach manuell nochmals die Bilder in dieses Verzeichnis. Wenn Sie mit mehreren Sprachen arbeiten müssen Sie auch die Kopien für die Sprache mit Endung „…_01.jpg“ (für 1. weitere Sprache) für alle Bilder nochmals erzeugen.

Ursache:
Die Extension kopiert sich die Bilder beim Anlegen eines Eintrages in das Verzeichnis „uploads\tx_ricrotation“. Wenn dieses Verzeichnis nicht mitkopiert wurde, können jetzt keine Bilder mehr gefunden werden.
Abhilfe:
Kopieren Sie alle Dateien vom Unterverzeichnis „uploads\tx_ricrotation“ vom alten Server wieder in dasselbe Verzeichnis auf dem neuen Server.
Die Erweiterung hat 3 wichtige Merkmale:
1. Die
„rgslideshow“ arbeitet innerhalb der Content-Element "Text mit Bild",
wie eine Diashow zusammen mit „pmkslimbox“ oder „perfectlightbox“.
Beispiele sind natürlich online: http://www.rggooglemap.com/dev/rgslideshow/slideshow-in-text-mit-bild.html
2. Die „rgslideshow“ ist die ultimative Aufnahme-image-Hänselei Verlängerung. Es ermöglicht die hänseln jeden Datensatz einer Tabelle. Beispiele für tt_news, fe_users & tt_content sind online verfügbar.
a) Bei Verwendung des Plugin-kann der Bearbeiter entscheiden, welche „Teaser“ angezeigt werden sollen.
b) Oder verwenden Sie einfach TS um ihre Einträge automatisch zu wählen.
So erhöhen Sie die Attraktivität ihrer Website (mit einer Galerie oder einem anderen interessanten Informationen), oder jegliche anderen Inhalten.
3. Zeigt normale Fotos oder Bilder in einer schönen Diashow (mit einem Leuchtkasten oder nicht). Wählen Sie die Bilder direkt, oder wählen Sie einen Ordner, um alle Bilder in diesem Verzeichnis).
1. Extension Image slideshow (rgslideshow) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren
und musste zuerst down geladen und aus der Datei installiert werden.
2. Wählen Sie
„Install extension“ und danach „Make Updates“.
3. Aktivieren Sie
das statische Template „Slideshow (rgslideshow)“ in Ihre Root-Template der
Website. Wählen Sie Ihr Root-Template Seite und klicken Sie in der Navigation
auf „Template“. Klicken Sie dann auf den Text „Click here to edit whole
template record“.
4. Wählen Sie im Reiter
enthält im Fenster „Statische Templates einschließen (aus Erweiterungen)“ unter
Objekten "Slideshow (rgslideshow)" aus.

5. Speichern Sie
die Änderung im Root-Template ab.
6. Legen Sie eine
neu Seite mit Namen „Slideshow Images“ als Typ „SysOrdner“ an
7. Geben Sie auf dieser Seite im Reiter „Optionen im Feld „TSconfig“ folgendes ein.
|
############ Slideshow images (rgslideshow) ################## rgslideshow.tables = tt_content,tt_news,pages,fe_users |
8. Erstellen Sie
ein Inhaltselement in der neuen Seite und wählen Sie unter „Slideshow“ aus.
![]()
9. In den
Inhaltselement im Reiter „Plug-In“ geben Sie folgendes unter „Einstellungen“
für eine Slideshow von Bildern welche sich in einem Verzeichnis befinden ein.

10. Im gleichen Inhaltselement unter
„Erweiterte Einstellungen“ geben Sie folgendes ein.

Dieser Fehler wird im Frontend angezeigt, an der Stelle an welcher das Slideshow Bild erscheinen sollte.
Die Erweiterungen wie eine Galerie und eine Slideshow, die entweder automatisch das nächste Bild (nach einer veränderlichen Höhe der Zeit) oder der Benutzer können auf die nächste und vorhergehende Bild. Diese beiden Einstellungen können auch miteinander kombiniert werden. Lightbox ist auch (wie slimbox).
Die Erweiterung funktioniert in vielerlei Hinsicht:
· Bilder aus einem Verzeichnis: So fügen Sie einfach den Pfad zu einem Verzeichnis, in dem flexforms und du bist fertig.
· Bilder von der Einträge: Erstellen Sie einen Datensatz für jedes Bild und speichern Sie die Seite als Ausgangspunkt.
· Bilder in "Text mit Bild": Präsentation der Bilder von einem normalen Content Element mit rgSmoothGallery.
· Bilder aus DAM: Wählen Sie die Einträge und Sie haben es geschafft.
· Bilder aus DAM Kategorien: Wählen Sie ein DAM Kategorie, um die Bilder.
· Integration in tt_news: Präsentation der Bilder von der im LIST / LATEST oder SINGLE-View.
Weitere Funktionen sind:
· Bilder können beschnitten
· Beschränkung der Bilder
·
Wasserzeichen
Zeiteinstellung Diashows zu ändern Bilder nach einer bestimmten Zeit
· Thumbnails in einem anderen div
1. Extension Image slideshow (rgsmoothgallery) installieren.
Sie ließ sich automatisch aus dem Online Repository nicht installieren
und musste zuerst down geladen und aus der Datei installiert werden.
2. Wählen Sie
„Install extension“ und danach „Make Updates“ und „Update“.
3. Aktivieren Sie
das statische Template „SmoothGallery (rgsmoothgallery)“ in Ihre Root-Template
der Website. Wählen Sie Ihr Root-Template Seite und klicken Sie in der
Navigation auf „Template“. Klicken Sie dann auf den Text „Click here to edit
whole template record“.
4. Wählen Sie im Reiter
enthält im Fenster „Statische Templates einschließen (aus Erweiterungen)“ unter
Objekten "SmoothGallery (rgsmoothgallery)" aus.

5. In dem Setup Bereich des Root-Templates geben wir folgendes ein wenn wir ohne Flexforms arbeiten wollen. Das unten angeführte Script erstellt eine Bilder-Slideshow für aus einem Verzeichnis.
|
… ######### Konfiguration SmoothGallery (rgsmoothgallery) ######### plugin.tx_rgsmoothgallery_pi1 { mode = DIRECTORY startingpoint = fileadmin/templates/images/banner/ duration = 10000 big.file.maxW = 631 big.file.maxH = 41 hideInfoPane = 1 showThumbs= 0 lightbox = 0 arrows = 0 } … |
1. Kopieren Sie die
CSS Datei „jd.gallery.css“ aus dem Verzeichnis „typo3conf/ext/rgsmoothgallery/res/css/“
in Ihr CSS Verzeichnis unter „fileadmin“ z.B. „fileadmin/css“.
2. Bearbeiten Sie die Datei „jd.gallery.css“ und ändern Sie folgende Einträge um den schwarzen Hintergrund das Ladefenster und den Rahmen um die Bilder zu entfernen.
|
.tx-rgsmoothgallery-pi1 { … background:#ffffff center; … } .myGallery { … border: 0px; … } .jdGallery .slideElement { … background-color: #fff; … } .jdGallery .loadingElement { … background-color: #fff; … } |
3. In dem Setup Bereich des Root-Templates geben Sie den Pfad für die CSS Datei ein.
|
… plugin.tx_rgsmoothgallery_pi1.pathToJdgalleryCSS = fileadmin/templates/css/jd.gallery.css … |
Hinweis Bei meiner Installation funktionierte die Anzeige von Bildern mit den Angaben im Flexforms nicht. Nur durch Einträge im Setup Bereich funktionierte die Extension. Der Vollständigkeit halber aber hier trotzdem der Ablauf.
11. Legen Sie eine neu Seite „Smooth Gallery“
als Typ „SysOrdner“.
12. Erstellen Sie auf diese Seite ein
Inhaltselement mit „SmoothGallery“.
![]()
13. Gehen Sie auf den Reiter „Plug-In“
und dort auf „Einstellungen“.

14. Im Reiter „Erweiterte
Einstellungen“ folgendes auswählen.

Ursache:
Übergabe des Plug-In an den Subpart ist falsch. Das Subpart wurde folgenderweise angesprochen „subpart.bilder < tx_rgsmoothgallery_pi1“.
Hier fehlt also noch vor „tx_rgsmoothgallery_pi1“ der „plugin“ Eintrag.
Abhilfe:
Richtige Übergabe an den Subpart „subpart.bilder < plugin.tx_rgsmoothgallery_pi1“
Ursache:
Ist der Pfad zu den Bildern korrekt eingetragen? Abschließender Slash! (/)
Alle Order und Bilder müssen mindestens Zugriffsrecht 0644 oder 0777 (chmod)!
ImageMagick muss dem Server installiert sein und auch funktionieren.
Im „TypoScript Object Browser“ wird der „mode“ Parameter nicht angezeigt!
Abhilfe:
Im Setup Bereich wurde folgendes eingetragen.
|
plugin.tx_rgsmoothgallery_pi1.mode = DIRECTORY plugin.tx_rgsmoothgallery_pi1.startingpoint = fileadmin/templates/images/banner/ |
Eine Erweiterung der ursprünglichen AWstats Extension (cc_awstats) um Ausführliche Loganalysen der TYPO3 Logdateien durchzuführen. Diese Extension beinhaltet schon das Programm „AWstats“ um die Loganalysen durchzuführen, d.h. es muss dieses Programm nicht zusätzlich installiert werden.
1. Extension „ics_awstats“ (V 0.5.3) installieren.
2. Backend
Browserfenster aktualisieren. Es wird ein neuer Menüpunkt in der Navigation „AWstats“
angezeigt.
![]()
3. Pfad zu der
Logdatei manuell oder über das TYPO3 „Install Tool“ eintragen in die Datei
„localconf.php“ im Verzeichnis „typo3conf“, z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir']
= 'typo3temp/log/';
Hinweis Der Pfad lt. Beschreibung ist immer
„fileadmin/log“. Dieser Pfad wurde hier bewußt geändert auf den
„typo3temp/log“, da auf diesen Pfad von Extern nicht zugegriffen werden kann.
Dies wurde aus Gründen des Datenschutzes durchgeführt, damit keine Zugriffe von
der Homepage durchgeführt werden können.
4. Legen Sie im
Verzeichnis „fileadmin“ das neue Verzeichnis „log“ an.
5. Setzen Sie
Schreibrecht auf das Logverzeichnis „log“ für die Gruppe unter welcher Ihr
Apache Server läuft. Bei einer LAMPP Installation ist dies z.B.:
chgrp -R wwwrun:root
/srv/www/htdocs/rpw/typ3temp/log
chmod -R g+w,o-rwx /srv/www/htdocs/rpw/typo3temp/log
Hinweis Ersetzen Sie den Text „rpw“ durch den Pfad
Ihrer TYPO3 Installation.
6. In das Setup Feld des Root Templates schreiben Sie folgendes TypoScript:
|
… # ICS AWStat Extension Konfigurieren config.stat
= 1 // you can use this if you want database logging also but its’s not needed #config.stat_mysql = 1 … |
Erstellen Sie im Verzeichnis
„fileadmin/log“ die Datei „homepage.log“. Vergeben Sie wieder Schreibrechte für
die Gruppe unter welcher Ihr Apache Server läuft auf diese Datei.
7. Klicken Sie auf
den Menüpunkt „AWstats“ und geben Sie in der Konfiguration den Domainnamen für
Ihre Logdatei ein, z.B.:

Klicken Sie danach auf „Konfiguration sichern“.
Hinweis Wenn Sie bei einer Datei „-„ (minus)
eintragen und damit festlegen das dies keine Logdatei ist, so wird dies in der
Datei (nach klicken auf „Konfiguration sichern“)
„fileadmin//log/.awstats-data/awstats-module.conf“ mitgeschrieben (diese Datei
ist in einem versteckten Verzeichnis).
8. Es sollte jetzt
folgende Ansicht der Statistiken erscheinen.

9. Klicken Sie auf
die Schaltfläche „Jetzt aktualisieren“. Danach sollten die Statistikeinträge in
der Ansicht angezeigt werden.
1. Ext Manager aufrufen
2. Informationen von AWstats aufrufen
3. Auf Edit Files gehen (funktioniert nur wenn in „localconf.php“ Edit erlaubt wurde), ansonsten die Dateien über den Editor direkt bearbeiten.
4. In ext_tables.php das »tool« auf »web« ändern
5. In mod1/conf.php tool_txccawstatsM1 auf web_... abändern! Und den Access von »admin« auf »user,group« ändern
6. In mod1/index.php folgendes abändern:
|
$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause); $access = is_array($this->pageinfo) ? 1 : 0;
if(($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) { |
ändern in:
|
$this->pageinfo = t3lib_BEfunc::readPageAccess($this->id,$this->perms_clause); $access = is_array($this->pageinfo) ? 1 : 0;
if(($this->id && $access) || ($BE_USER->user["admin"] && !$this->id) || ($BE_USER->user["uid"] && !$this->id)) { |
Nun kann ein normaler (nicht admin) Benutzer auf „AWstats“ unter den „Web“ Tools zugreifen.
Nun der Benutzergruppe des Benutzers einfach unter »Include Access Lists« einmal »web« und dann noch »Web>AWStats« zuweisen und es müsste gehen...
|
FEHLER: |
Ursache:
In der Datei “localconf.php” im Verzeichnis “typo3conf” wurde der Pfad zu der
Logdatei nicht eingetragen.
Abhilfe:
Pfad zu der Logdatei manuell in die „localconf.php“ oder
über das TYPO3 „Install Tool“ eintragen, z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir']
= 'typo3temp/log/';
|
FEHLER: |
Abhilfe:
Geben Sie den richigten Pfad zu Ihren vorher erstellen
Logverzeichnis in der Datei „localconf.php“ im Verzeichnis „typo3conf“ ein
z.B.:
$TYPO3_CONF_VARS['FE']['logfile_dir']
= 'typo3temp/log/';
|
FEHLER: |
Ursache:
Die Gruppe unter der Ihr Apache Server läuft hat keine Schreibrechte auf das Logverzeichnis.
Abhilfe:
Setzen Sie Schreibrecht auf das Logverzeichnis für die
Gruppe unter welcher Ihr Apache Server läuft. Bei einer LAMPP Installation
könnte dies z.B. so aussehen:
chgrp –R www /srv/www/htdocs/rpw/typo3temp/log
chmod –R g+w,o-rwx /srv/www/htdocs/rpw/typo3temp/log
|
Fatal error: Call to undefined method template::middle() in /home/.sites/112/site415/web/typo3conf/ext/ics_awstats/mod1/index.php on line 87 |
Ursache:
Dieser Fehler tritt ab TYPO 4.6 auf, da in dieser Version alle als “deprecated” angekündigten Änderungen in den Core Modulen entfernt wurden.
Abhilfe:
Damit die Statistik wieder funktioniert, muss in der Datei mod1/index.php bei der Funktion „printContent()“ folgende Zeile auskommentieren oder löschen:
|
$this->content.= $this->doc->middle(); |

Ursache:
Noch nicht ermittelt.
Abhilfe:
Mit dieser Extension können Sie gewünschte Seiten im Backend als „Popup“ definieren. Diese Seiten werden dann im Browser immer als Popup Fenster geöffnet.
1. Installieren Sie die Extension „popup_manager“. Es werden 3 neue Tabellen angelegt.
2. In der Seitendefinition im Backende (Standard, Erweitert, etc.) werden jetzt neue Felder angezeigt.
3. Wenn das Option „Popup“ angeklickt wird, erscheint die Seite im Frontend immer als Popup Fenster wenn sie angeklickt wird.
4. Das Feld „Parameter“ kann zur Übergaben von Parameter wie Breite und Höhe für das Fenster verwendet werden z.B. „width=547,height=499,resizeable=no,scrollbars=no,menubar=no“.
5. Im Feld „Popup Titel“ kann ein Titel für das Popup Fenster eingegeben werden. Geben Sei beim Namen keine Sonderzeichen ein, ansonsten kommt ein Scriptfehler im MS Internet Explorer.
Beim Öffnen der Seite im MS Internet Explorer kommt ein Skriptfehler mit „Ungültiges Argument“ und die Seite wird nicht als Popup geöffnet. Im Firefox oder Netscape funktioniert das Popup aber normal.
Ursache:
Eventuell haben bei der Definition des „Popup titles“ für das Popup im Backend ein Sonderzeichen eingegeben z.B. ein Plus („+“) Zeichen. Der Internet Explorer interpretiert dies als falsches Zeichen in dem JavaScript für das Popup.
Abhilfe:
Geben Sie in das Feld „Popup title“ keine Sonderzeichen für den Fensternamen ein.
Warning: main(PATH_tslibclass.tslib_pibase.php) [function.main]: failed to open stream: No such file or directory in
/opt/lampp/htdocs/cms/typo3conf/ext/popup_manager/class.vl_tslib_content.php
on line 27
Fatal error: main() [function.require]: Failed opening required
'PATH_tslibclass.tslib_pibase.php' (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/cms/typo3conf/ext/popup_manager/class.vl_tslib_content.php
on line 27
Ursache:
Nachdem die Extension „popup_manager“ Installiert wurde erscheint diese Fehlermeldung wenn in der Navigationsleiste auf das Modul „formhandler“ geklickt wird.
Abhilfe:
Workaround es wird die „required_once“ von „class.tslib_pibase.php“ in „include_once“ umgeändert.
Der Umzug einer TYPO3 Website kann erforderlich sein, wenn
Sie eine TYPO3 Website Online betreiben und zusätzlich lokal einen Linux Server
laufen haben, auf dem Sie Entwicklungen für die gleiche Website durchführen.
Beim Umzug der TYPO3 Website, werden entweder Teile, oder die ganze TYPO3
Installation von einem Server auf den anderen übersiedelt.
Ein anderer Fall könnte ein TYPO3 Versionsupdate sein, welches Sie zuerst auf
einem lokalen Server installieren und ausgiebig testen, und erst dann wieder
auf einen Server bei einem ISP übertragen.
Dieses Kapitel beschreibt Scenarien welche bei einer Übersiedlung (Umzug) von Websites von einem lokalen Server auf einen Server eines ISP, oder auch umgekehrt vom ISP auf einem lokalen Server, sowie bei einem Umzug von einem ISP auf einen anderen ISP zu beachten sind.
Ausgangspunkt ist hier eine funktionierden TYPO3 Site auf einem lokalen Server. Diese soll jetzt auf einen ISP Server übersiedelt werden.
WICHTIG Es wird davon ausgegangen, dass die verwendete TYPO3 Versionen auf dem lokalen Server, wie beim ISP Server, die selber Versionsnummer besitzen. Ansonsten können Sie eine unschöne Überraschung erleben, besonders beim Update von TYPO 4.5.x auf die 4.6.x Version, das Funktionalitäten die vorher gelaufen sind, plötzlich Fehler erzeugen.
1. Erstellen Sie
sich ein loakle Projektverzeichnis auf welches Sie loakl und auch Online
zugreifen können z.B. „RPW-Umsiedlung“.
2. In diesem
erstellen Sie zusätzlich noch zwei Verzeichnisse einmal „Lokal“ einmal „Online“
und dann noch ein „Backup“ Verzeichnis.
3. Unter dem
Verzeichnis „Lokal“ erstellen Sie jetzt zwei weitere Unterverzeichnisse „Homepage“
und „DB“.
4. Kopieren Sie von
der lokalen TYPO3 Installation (vom lokalen Server) entweder direkt, über SSH
(„Tunnelier“ Programm), oder über einen FTP Client, folgende Verzeichnisse und
Dateien in das Verzeichnis „RPW-Umsiedlung/Lokal/Homepage“:
- „fileadmin“
- „typo3conf“
- „uploads“
- und die Datei „.htaccess“
5. Wenn Sie noch zusätzlich ein „typo3_prog“ Verzeichnis ausserhalb des TYPO3 Verzeichnisses besitzen, kopieren Sie diese Verzeichnis in das Verzeichnis „RPW‑Umsiedlung/Lokal/“
6. Kopieren Sie das
Programm „mysqldumper“ auf Ihren lokalen Server in Ihr TYPO3 Verzeichnis
„mysqldumper“. Starten Sie den das Programm über den URL der TYPO3 Installation
mit nachfolgend „/mysqldumper“.
Download „mysqldumper“: http://www.mysqldumper.de/
WICHTIG Schützen Sie
das Verzeichnis vom „mysqldumper“ immer mit einem Login und einem Kennwort. Der
„mysqldumper“ fordert Sie beim ersten Einstieg dazu auf.
7. Führen Sie im
Programm „mysqldumper“ ein Backup Ihrer TYPO3 Datenabnk aus und speichern sie
das Backup im Verzeichnis „RPW-Umsiedlung/Lokal/db“ ab.
8. Wenn auf dem
TYPO3 Server bei Ihrem ISP schon eine funktionierende TYPO3 Installation mit
Inhalt vorhanden ist, sollte Sie jetzt auch diese sichern. Wenn nicht gehen Sie
bei Punkt 12. weiter.
Beginnend wieder mit den Dateien Ihrer TYPO3 Installation beim ISP kopieren Sie
diese in das Verzeichnis „RPW‑Umsiedlung/Backup/Homepage“:
- „fileadmin“
- „typo3conf“
- „uploads“
- und die Datei „.htaccess“, „.htpasswd“ und „.group“
(wenn vorhanden).
Hinweis Schneller geht es wenn Sie diese
Verzeichnisse und Dateien auf ISP Server nur umbenennen und mit der Endung „_old“
versehen. Damit ersparen Sie sich bei großen Sites die möglichen
Transferzeiten, wenn Sie eventuell bei einem Fehler während der Übersiedlung,
wieder auf die alte Version zurückstellen müssen.
9. Kopieren Sie ds
Programm „mysqldumper“ auf Ihren ISP Server in Ihr TYPO3 Verzeichnis
„mysqldumper“. Starten Sie den das Programm über den URL der TYPO3 Installation
mit nachfolgend „/mysqldumper“.
10. Führen Sie im Programm
„mysqldumper“ ein Backup Ihrer TYPO3 Datenbank aus und speichern sie das Backup
im Verzeichnis „RPW-Umsiedlung/Backup/db“ ab.
11. Als nächstes können wir über den
FTP Client eine Bereinigung der vorhandenen Verzeichnisse auf dem ISP Server durchführen.
Bei Verzeichnissen, welche schon in das Verzeichnis „Backup“ gesichert wurden,
können Sie diese komplett löschen. Zur Sicherheit sollten Sie aber alle alten
Verzeichniss vorerst nur auf die Endung „_old“ umbenennen. Wenn die neue
Website dann funktioniert, können diese immer noch gelöscht werden. Folgende
Umbebennungen durchführen durch anhängen von „_old“:
- „fileadmin_old“
- „t3lib_old“
- „typo3_old“
- „typo3conf_old“
- „typo3temp_old“
- „upload_old“
- Datei „.htaccess_old“
- Datei „index.php._old
Hinweis ISP spezifisch könnten auch noch andere
Verzeichnisse im TYPO3 Installationsverzeichnis vorhanden sein. Welche aber
eine Versionsänderung der TYPO3 Installation bei Ihrem ISP nicht beinflussen
sollten.
12. Loggen Sie sich in das ISP
Verwaltungstool für Ihre Website ein.
Erstellen Sie jetzt zuerst eine neue SQL Datenbank für Ihre neue TYPO3
Installation.

Hinweis Wenn Sie eine Umsiedlung der Website auf
einen lokalen Server durchführen, installieren Sie zuerst TYPO3 oder eine neue
TYPO3 Instanz (siehe Kapitel „5 Neuinstallation von TYPO3“ oder „7 Zusätzliche
neue TYPO3 Instanz erstellen“) und dann gehen Sie in das TYPO3 Install Tool und
erstellen eine neue Datenbank. Beachten Sie besonders die Hinweise auf den
verwendeten Zeichensatz für die TYPO3 Datenbank.
13. Gehen Sie jetzt in die
Verwaltungsanwendung Ihres ISP und wählen Sie dort das Paket für Ihre neue
Website aus z.B. „TYPO3 4.6“. Wählen Sie die neue Datenbank aus und
geben Sie den Pfad für die Installation (normal „/“) ein. Führen Sie die
Installation aus.

Hinweis Es könnte notwendig sein, dass Sie für die
Installation zuerst auf die neue Version PHP 5.3 wechseln müssen:

14. Prüfen Sie jetzt, ob die neue
Website bei Ihrem ISP funktioniert. Es sollte normalerweise der Text „HELLO
WORLD!“ angezeigt werden.
15. Soweit so gut, nun kopieren Sie
aus der neue TYPO3 Installation beim ISP das Verzeichnis „typo3conf“ in
das lokale Verzeichnis „RPW‑Umsiedlung/Online/Homepage“.
Hinweis Wichtig ist Sicherung besonders wegen der
originalen „localconf.php“ Datei.
16. Jetzt kommt der schwierigste Teil,
Sie müssen die „localconf.php“, welche sich jetzt im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“
befindet, mit Ihrer lokalen aus dem Verzeichnis „RPW‑Umsiedlung/Lokal/Homepage/typo3conf“
abgleichen
Dabei dürfen Sie die Einstellungen für die Datenbankanmeldung, des
Grafikprogramms, etc. nicht ändern. Fertigen Sie zuerst eine Kopie der
„localconf.php“ im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“
an.
Unten sehen Sie den Inhalt der neuen „localconf.php“ in welche vor dem Ende
„?>“ noch der Inhalt welche unterhalb der Datenbankzugriff und
Grafikeinstellungen sowie des php_safemode steht in rot
eingefügt:
|
<?php if (!defined ('TYPO3_MODE')) { die ('Access denied.'); }
$TYPO3_CONF_VARS['SYS']['sitename'] = 'New TYPO3 site';
// Default password is "joh316" : $TYPO3_CONF_VARS['BE']['installToolPassword'] = '1234567890';
$TYPO3_CONF_VARS['EXT']['extList'] = 'info,perm,func,filelist,about,version,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,rtehtmlarea,css_styled_content,t3skin,t3editor,reports,felogin,form';
$typo_db_extTableDef_script = 'extTables.php';
## INSTALL SCRIPT EDIT POINT TOKEN - all lines after this points may be changed by the install script!
$TYPO3_CONF_VARS['EXT']['extList'] = 'info,perm,func,filelist,about,version,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,rtehtmlarea,css_styled_content,t3skin,t3editor,reports,felogin,form,rsaauth,saltedpasswords'; $TYPO3_CONF_VARS['SYS']['encryptionKey'] = '1234567890'; $TYPO3_CONF_VARS['SYS']['compat_version'] = '4.6'; $typo_db_username = 'user‘; $typo_db_password = '********'; $typo_db_host = 'mysql.domain.com'; $typo_db = 'rpwdb1'; $TYPO3_CONF_VARS['EXT']['extConf']['saltedpasswords'] = 'a:2:{s:3:"FE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}s:3:"BE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}}'; $TYPO3_CONF_VARS['BE']['loginSecurityLevel'] = 'rsa'; $TYPO3_CONF_VARS['FE']['loginSecurityLevel'] = 'rsa'; $TYPO3_CONF_VARS['EXT']['extConf']['em'] = 'a:1:{s:17:"selectedLanguages";s:2:"de";}'; $TYPO3_CONF_VARS['GFX']['im_path'] = '/usr/bin/php_safemode/'; $TYPO3_CONF_VARS['GFX']['im_path_lzw'] = '/usr/bin/php_safemode/'; $TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6'; $TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite'; $TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = 1; $TYPO3_CONF_VARS['GFX']['im_no_effects'] = 0; $TYPO3_CONF_VARS['GFX']['TTFdpi'] = 96;
# email with php_safemode=on if (!function_exists('user_fcmail')) { $TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/utility/class.t3lib_utility_mail.php']['substituteMailDelivery'][] = 'user_fcmail';
function user_fcmail($parameters) { $to = $parameters['to']; $subject = $parameters['subject']; $messageBody = $parameters['messageBody']; $additionalHeaders = $parameters['additionalHeaders']; $additionalParameters = $parameters['additionalParameters'];
$success = mail($to, $subject, $messageBody, $additionalHeaders); return $success; } }
$TYPO3_CONF_VARS['EXT']['extList'] = 'extbase,css_styled_content,tsconfig_help,context_help,extra_page_cm_options,impexp,sys_note,tstemplate,tstemplate_ceditor,tstemplate_info,tstemplate_objbrowser,tstemplate_analyzer,func_wizards,wizard_crpages,wizard_sortpages,lowlevel,install,belog,beuser,aboutmodules,setup,taskcenter,info_pagetsconfig,viewpage,automaketemplate,tipafriend,rtehtmlarea,indexed_search,t3skin,ric_rotation,tt_news,macina_searchbox,phpmyadmin,about,cshmanual,feedit,opendocs,recycler,t3editor,reports,scheduler,version,dam,air_filemanager,dam_catedit,statictemplates,ve_guestbook,captcha,info,perm,func,filelist,fluid,workspaces,static_info_tables,formhandler,crawler,realurl,w4x_backup,ics_awstats'; // Modified or inserted by TYPO3 Extension Manager. Modified or inserted by TYPO3 Install Tool. Modified or inserted by TYPO3 Core Update Manager. $TYPO3_CONF_VARS['EXT']['extConf']['css_styled_content'] = 'a:1:{s:15:"setPageTSconfig";s:1:"1";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['rtehtmlarea'] = 'a:19:{s:21:"noSpellCheckLanguages";s:23:"ja,km,ko,lo,th,zh,b5,gb";s:15:"AspellDirectory";s:15:"/usr/bin/aspell";s:17:"defaultDictionary";s:2:"de";s:14:"dictionaryList";s:2:"de";s:18:"HTMLAreaPluginList";s:198:"TableOperations, SpellChecker, ContextMenu, SelectColor, TYPO3Browsers, InsertSmiley, FindReplace, RemoveFormat, CharacterMap, QuickTag, InlineCSS, DynamicCSS, UserElements, Acronym, TYPO3HtmlParser";s:20:"defaultConfiguration";s:105:"Typical (Most commonly used features are enabled. Select this option if you are unsure which one to use.)";s:12:"enableImages";s:1:"1";s:24:"enableAccessibilityIcons";s:1:"1";s:16:"enableDAMBrowser";s:1:"0";s:22:"enableMozillaExtension";s:1:"1";s:14:"enableInOpera9";s:1:"1";s:16:"forceCommandMode";s:1:"0";s:15:"enableDebugMode";s:1:"0";s:23:"enableCompressedScripts";s:1:"1";s:20:"mozAllowClipboardUrl";s:114:"http://releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";s:20:"enableInlineElements";s:1:"0";s:19:"allowStyleAttribute";s:1:"1";}'; // Modified or inserted by TYPO3 Extension Manager.releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";}'; //releases.mozilla.org/pub/mozilla.org/extensions/allowclipboard_helper/allowclipboard_helper-0.5.3-fx+mz.xpi";s:18:"plainImageMaxWidth";s:1:"0";s:19:"plainImageMaxHeight";s:1:"0";}'; // $TYPO3_CONF_VARS['EXT']['extConf']['w4x_backup'] = 'a:1:{s:11:"w4x_backup.";a:11:{s:14:"mysqldump_path";s:18:"/usr/bin/mysqldump";s:10:"mysql_path";s:14:"/usr/bin/mysql";s:9:"7zip_path";s:29:"c:\\Program files\\7-zip\\7z.exe";s:8:"tar_path";s:3:"tar";s:11:"backup_path";s:13:"typo3temp/w4x";s:11:"date_format";s:9:"Y-m-d H:i";s:10:"max_number";s:1:"0";s:8:"max_days";s:1:"0";s:8:"excluded";s:0:"";s:9:"permCheck";s:1:"1";s:10:"addTarList";s:1:"1";}}'; // Modified or inserted by TYPO3 Extension Manager. Modified or inserted by Tasks Manager Config Update. $TYPO3_CONF_VARS['EXT']['extConf']['indexed_search'] = 'a:20:{s:8:"pdftools";s:38:"/srv/www/htdocs/typo3_progs/xpdf-3.03/";s:8:"pdf_mode";s:2:"20";s:14:"nativeOOMethod";s:1:"0";s:10:"OOoExtract";s:15:"/usr/local/bin/";s:4:"ruby";s:15:"/usr/local/bin/";s:6:"catdoc";s:40:"/srv/www/htdocs/typo3_progs/catdoc-0.94/";s:6:"xlhtml";s:15:"/usr/local/bin/";s:7:"ppthtml";s:15:"/usr/local/bin/";s:5:"unrtf";s:15:"/usr/local/bin/";s:9:"debugMode";s:1:"0";s:23:"disableFrontendIndexing";s:1:"0";s:6:"minAge";s:2:"24";s:6:"maxAge";s:3:"168";s:16:"maxExternalFiles";s:1:"5";s:11:"flagBitMask";s:3:"196";s:16:"ignoreExtensions";s:0:"";s:17:"indexExternalURLs";s:1:"0";s:5:"unzip";s:9:"/usr/bin/";s:18:"fullTextDataLength";s:1:"0";s:26:"useCrawlerForExternalFiles";s:1:"1";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['ric_rotation'] = 'a:1:{s:7:"typeNum";s:4:"9005";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['slideshow'] = 'a:1:{s:7:"typeNum";s:4:"9005";}'; // Modified or inserted by TYPO3 Extension Manager. $typo3_db_extTableDef_script = "libs/extTables.php"; $TYPO3_CONF_VARS['SYS']['curlUse'] = '1'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['FE']['disableNoCacheParameter'] = '0'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['BE']['disable_exec_function'] = '0'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['EXT']['extConf']['tt_news'] = 'a:15:{s:13:"useStoragePid";s:1:"1";s:13:"noTabDividers";s:1:"0";s:25:"l10n_mode_prefixLangTitle";s:1:"1";s:22:"l10n_mode_imageExclude";s:1:"1";s:20:"hideNewLocalizations";s:1:"0";s:13:"prependAtCopy";s:1:"1";s:17:"requireCategories";s:1:"0";s:5:"label";s:5:"title";s:9:"label_alt";s:5:"title";s:10:"label_alt2";s:0:"";s:15:"label_alt_force";s:1:"0";s:11:"treeOrderBy";s:3:"uid";s:21:"categorySelectedWidth";s:1:"0";s:17:"categoryTreeWidth";s:1:"0";s:18:"categoryTreeHeigth";s:1:"5";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['css_select'] = 'a:2:{s:6:"CSSDIR";s:14:"fileadmin/css/";s:6:"CSSEXT";s:3:"css";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['captcha'] = 'a:21:{s:6:"useTTF";s:1:"0";s:8:"imgWidth";s:3:"110";s:9:"imgHeight";s:2:"35";s:12:"captchaChars";s:1:"6";s:9:"noNumbers";s:1:"0";s:4:"bold";s:1:"0";s:7:"noLower";s:1:"0";s:7:"noUpper";s:1:"0";s:13:"letterSpacing";s:2:"16";s:5:"angle";s:2:"30";s:5:"diffx";s:1:"0";s:5:"diffy";s:1:"6";s:4:"xpos";s:1:"5";s:4:"ypos";s:1:"6";s:6:"noises";s:1:"6";s:9:"backcolor";s:7:"#f4f4f4";s:9:"textcolor";s:7:"#000000";s:11:"obfusccolor";s:7:"#c0c0c0";s:8:"fontSize";s:2:"20";s:8:"fontFile";s:0:"";s:12:"excludeChars";s:14:"gijloGIJLO0169";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['dam'] = 'a:7:{s:8:"tsconfig";s:7:"default";s:8:"web_file";s:1:"0";s:15:"hideMediaFolder";s:1:"0";s:8:"mediatag";s:1:"1";s:15:"htmlAreaBrowser";s:1:"1";s:5:"devel";s:1:"0";s:13:"file_filelist";s:1:"0";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['dam_index'] = 'a:2:{s:18:"add_media_indexing";s:1:"1";s:23:"add_media_file_indexing";s:1:"1";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['phpmyadmin'] = 'a:4:{s:12:"hideOtherDBs";s:1:"1";s:9:"uploadDir";s:21:"uploads/tx_phpmyadmin";s:10:"allowedIps";s:10:"10.0.0.144";s:12:"useDevIpMask";s:1:"0";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['FE']['defaultTypoScript_constants'] = '[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005\' . LF . \'[GLOBAL]\' . LF . \'extension.ric_rotation.typeNum = 9005'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['EXT']['extList_FE'] = 'extbase,css_styled_content,install,automaketemplate,tipafriend,rtehtmlarea,indexed_search,t3skin,ric_rotation,tt_news,macina_searchbox,phpmyadmin,feedit,version,dam,air_filemanager,dam_catedit,statictemplates,ve_guestbook,captcha,fluid,workspaces,static_info_tables,formhandler,crawler,realurl,w4x_backup,ics_awstats'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['realurl'] = 'a:5:{s:10:"configFile";s:26:"typo3conf/realurl_conf.php";s:14:"enableAutoConf";s:1:"0";s:14:"autoConfFormat";s:1:"0";s:12:"enableDevLog";s:1:"0";s:19:"enableChashUrlDebug";s:1:"0";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['mm_dam_filelist'] = 'a:4:{s:24:"use_ttaddress_connection";s:1:"0";s:13:"ttaddress_uid";s:2:"-1";s:18:"realurlintegration";s:1:"1";s:14:"useinmixedmode";s:1:"0";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['INSTALL']['wizardDone']['tx_coreupdates_installsysexts'] = '1'; // Modified or inserted by TYPO3 Upgrade Wizard. $TYPO3_CONF_VARS['SYS']['setDBinit'] = ''; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['EXT']['extConf']['static_info_tables'] = 'a:1:{s:7:"charset";s:5:"utf-8";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['GFX']['gdlib_png'] = '1'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['TTFdpi'] = '96'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['BE']['versionNumberInFilename'] = '0'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['image_processing'] = '1'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['im_useStripProfileByDefault'] = '0'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1'; // Modified or inserted by TYPO3 Install Tool. $TYPO3_CONF_VARS['EXT']['extConf']['crawler'] = 'a:15:{s:9:"sleepTime";s:4:"1000";s:16:"sleepAfterFinish";s:2:"10";s:11:"countInARun";s:3:"100";s:14:"purgeQueueDays";s:2:"14";s:12:"processLimit";s:1:"1";s:17:"processMaxRunTime";s:3:"300";s:14:"maxCompileUrls";s:5:"10000";s:12:"processDebug";s:1:"0";s:16:"crawlHiddenPages";s:1:"0";s:7:"phpPath";s:12:"/usr/bin/php";s:14:"enableTimeslot";s:1:"1";s:11:"logFileName";s:0:"";s:9:"follow30x";s:1:"0";s:18:"makeDirectRequests";s:1:"0";s:16:"frontendBasePath";s:5:"/rpw/";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['dr_blob'] = 'a:6:{s:15:"categoryStorage";s:10:"StoragePID";s:18:"enableCounterReset";s:1:"1";s:17:"reallyDeleteFiles";s:1:"0";s:12:"integration.";a:1:{s:14:"indexed_search";s:1:"1";}s:12:"storageType.";a:3:{s:2:"db";s:1:"1";s:2:"fs";s:1:"1";s:4:"fsus";s:1:"1";}s:17:"fileStorageFolder";s:26:"uploads/tx_drblob/storage/";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS['EXT']['extConf']['ics_awstats'] = 'a:5:{s:7:"perlbin";s:13:"/usr/bin/perl";s:17:"disableClearCache";s:1:"0";s:19:"enableDecodeUTFKeys";s:1:"1";s:11:"enableGeoIP";s:1:"0";s:14:"pathToGeoIPDat";s:26:"/usr/share/GeoIP/GeoIP.dat";}'; // Modified or inserted by TYPO3 Extension Manager. $TYPO3_CONF_VARS[„FE“][„logfile_dir“] = ‚typo3temp/log/’; ?> |
17. Speichern Sie die Datei danach
wieder unter dem Namen „localconf.php“ im Verzeichnis „RPW‑Umsiedlung/Online/Homepage/typo3conf“
ab.
18. Kopieren Sie jetzt die vorher
gesicherten Verzeichnisse aus dem Verzeichnis „RPW‑Umsiedlung/Lokal/Homepage/“
auf den neue Server bei Ihrem ISP, sodass diese die vorhandenen Verzeichnisse
ersetzen.
Die „localconf.php“ wird aus dem Verzeichnis RPW‑Umsiedlung/Online/Homepage/typo3conf“
auf den neuen Server in das „typo3conf“ Verzeichnis kopiert.
19. Kopieren Sie jetzt nochmals das
Programm „mysqldumper“ auf den ISP Server in das Unterverzeichnis Ihrer TYPO3
Installation unter den Namen „mysqldumper2“. Initialisieren Sie das
Programm mit Ihren neuen Zugangsdaten für Ihre neue TYPO3 Installation.
20. Laden Sie die Datei für die
Rücksicherung in den „mysqldumper2“ aus dem Verzeichnis RPW‑Umsiedlung/Lokal/DB“
über den Menüpunkt „Verwaltung“ (File Administration).

21. Führen im „mysqldumper2“ am neuen
Server ein „Widerherstellen“ (Restore) der geladenen Datei „rpw“ durch
die Auswahl bei der Rücksicherung durch. Klicken Sie dann auf „Wiederherstellen“
(Restore).

22. Stellen Sie sicher, dass sich
jetzt am ISP Server die korrekte „localconf.php“ Datei, welche von Ihnen
bearbeite wurde, im Verzeichnis „typo3conf“ auf dem ISP Server befindet.
Außerdem müssen Sie sicherstellen wenn Sie RealURL verwenden, das die korrekte
„.htaccess“ im Root Verzeichnis der TYPO3 Installation vorhanden ist.
23. Wenn Sie auf die TYPO3 4.6 Version
umgestellt haben, müssen Sie noch sicherstellen, dass kein „deprecated“
Variablen wie z.B. „GPvar:“ in TypoScript oder in den Extensions (bei PHP)
verwendet werden. Ersetzen Sie in den TypoScripten alle vorkommen von „GPvar:“
durch den Text „GP:“. Bei den Extensions ist es nicht ganz so einfach, entweder
es gibt ein Update in Repository oder Sie müssen maneull in den Extension Code
eingreifen. Betroffen ist auf alle Fälle die „ve_guestbook“ Extension.
Hinweis Bevor Sie jetzt beginnen alle Extensions nach
dieser Variablen zu durchsuchen, sollten Sie einfach mit Schritt 24.
weitergehen. Reagieren Sie dann immer auf die entprechenden Fehler, welche die
Verwendung „GPvar“ Variablen hinweisen.
24. Prüfen Sie den Aufruf Ihrer neuen Website.
WICHTIG Testen Sie
die neue Website ausgiebig und fahren Sie erst dann mit Punkt 25. fort, wenn
Sie sichergestellt haben, das alles funktioniert. Denn nach Ausführung von
Punkt 25. Und 26. gibt es kein Zurück mehr.
25. Löschen der „_old“ Verzeichnisse
funktioniert am schnellsten wenn Sie dies in dem vom ISP zur Verfügung
gestellten Online FTP Client ausführen. Sie können jetzt auch die „mysqldumper“
Verzeichnisse auf dem ISP Server löschen.
26. Löschen Sie jetzt die alte
Datenbank vom ISP Server.

27. Wenn es Ihr ISP ermöglicht können
Sie vieleicht auch noch einige PHP Parameter einstellen.

28. Die Übersiedlung ist somit abgeschlossen.
Hinweis Für eine Übersiedlung von einem ISP Server auf einen lokalen Server, oder von einen ISP auf einen anderen ISP Server, ändern Sie einfach die Reihenfolge dieser Anleitung und drehen Sie ggf.die Verzeichnisse „Online“ und Lokal“ um, sodas diese Ihrer Konfiguration entspricht.
Nach der Übersiedlung wird beim Login ins Backend nach Eingabe vom Benutzername und Passwort folgende Meldung angezeigt.

Ursache:
Diese Meldung wird immer dann angezeigt wenn in Ihrer alten TYPO3 Installation keine verschlüsselten Passwörter verwendet wurden. Die neue TYPO3 Installation anhand der „localconf.php“ Datei aber eine soche fordert.
Abhilfe:
Bearbeiten Sie nochmals die lokale „localconf.php“ Datei und
entfernen Sie vorerst die Zeilen für die Extension „saltedpassword“ Einträge:
|
… #$TYPO3_CONF_VARS['EXT']['extConf']['saltedpasswords'] = 'a:2:{s:3:"FE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}s:3:"BE.";a:2:{s:7:"enabled";s:1:"1";s:21:"saltedPWHashingMethod";s:28:"tx_saltedpasswords_salts_md5";}}'; #$TYPO3_CONF_VARS['BE']['loginSecurityLevel'] = 'rsa'; #$TYPO3_CONF_VARS['FE']['loginSecurityLevel'] = 'rsa'; … |
Danach die Datei nochmals auf den ISP Server unter das Verzeichnis „typo3conf“ hochladen.
Versuchen Sie sich nochmals einen Login ins Backend, der sollte wieder funktionieren.
Nach der Übersiedlung der TYPO3 Website wird der Backend
Login auf dem neuen Server ohne Formatierung angezeigt:

oder nach dem Login:

Abhilfe:
Löschen Sie auf dem neuen Server das Verzeichnis „compressor“, welches sich im Unterverzeichnis „typo3temp“ befindet.
Nach der Übersiedlung wird auf dem neuen Server im Frontend nur eine leere weiße Seite angezeigt. Im Quellcode der Seite ist folgendes enthalten:
|
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- This website is powered by TYPO3 - inspiring people to share! TYPO3 is a free open source Content Management Framework initially created by Kasper Skaarhoj and licensed under GNU/GPL. TYPO3 is copyright 1998-2011 of Kasper Skaarhoj. Extensions are copyright of their respective owners. Information and contribution at http://typo3.com/ and http://typo3.org/ -->
<base href="http://www.realpowerwork.com/" />
<title>Home</title> <meta name="generator" content="TYPO3 4.6 CMS" /> <meta name="KEYWORDS" content="Downloads,Themenlinks,Bereich,RealPowerWork,Open,Source,area,News,information,TYPO3,Lotus,programs,Hier,Freeware,will,Dokumente,Notes,Linux,free,publications,Informationen,trademarks,Software,Veröffentlichungen,source,freeware,open,kostenlosen,provision,commercial,there,Behind,previous,descriptions,tricks,these,goal,tipps,background,plans,developed,project,part,themselves,download,mentioned,companies,respective,their,documents" /> <meta name="DESCRIPTION" content="Software Evaluation, Programming, Anleitungen, Downloads" />
<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_fad97d0aa7.css?1321710359" media="all" /> <link rel="stylesheet" type="text/css" href="fileadmin/templates/css/ve_guestbook.css?1321711330" media="screen" /> <link rel="stylesheet" type="text/css" href="fileadmin/templates/css/air_gallery.css?1321711324" media="screen" /> <link rel="stylesheet" type="text/css" href="fileadmin/templates/css/rpw.css?1321711327" media="screen" /> <link rel="stylesheet" type="text/css" href="fileadmin/templates/css/printversion_content.css?1321711326" media="print" title="Druck-Stylesheet" />
<script src="typo3temp/javascript_8d985c2683.js?1321710359" type="text/javascript"></script>
</head> <body>
</body> </html>
|
Ursache:
Rufen Sie uber Ihren Website URL und den Anhang „/typo3/install“, das TYPO3 Install Tool auf. Gehen Sie auf den Menüpunkt „Database Analysis“ und danach auf „COMPARE“.

Bestätigen Sie die angezigten Update mit „Write to database“.
Jet kommt erst die Anzeige des eigentlichen Fehlers. Und zwar sind dies Tabellen die in der Imprtierten Datenbank als „InnoDB“ definiert waren aber nun als „MyISAM“ angelegt sind.

Klicken Sie nochmals auf die Schaltfläche „Write to database“ wenn der Fehler bestehen bleibt erlaub der ISP nicht das auf dem Server die „InnoDB“ Engine verwendet wird.
Die Website wird danch zwar wieder angezeit aber mit einigen Fehlern. In manchen Azeigen sind keine Umlaute oder Sonderzeichen vorhanden.
Abhilfe:
Entweder Sie sorgen dafür das in Ihrer TYPO3 Installation welche für die Rücksicherung verwendet wurde, keine Verwednung „InnoDB“ Engine erfolgt, oder Sie wechseln den ISP auf einen der Ihnen auch erlaubt „InnoDB“ Tabellen anzulegen.
Die Website wurde von einem Domänennamen auf einen anderen Domänennamen umgestellt. Auf der alten Website war „RealURL“ (mode_rewrite) aktiviert.

Abhilfe:
Kontrollieren Sie zuerst einaml die Berechtigune auf das Verzeichnis „filadmin“ in welchen die HTML Templates und CSS Dateien abgelegt sind. Eventuell kann der Server darauf nicht zugreifen. Rufen Sie die HTML Tempalte oder die CSS Datei einmal direkt mit dem kompletten Namen auf.
Kontrollieren Sie ob bei der Rücksicherung ein Verziechnis wie z.B. „uploads“ vergessen wurde. Das fehlerhafte Design könnte auch durch das fehlen Bilder zustandekommen.
Der Text wechselte, je nach Menüauswahl, auf die jeweiligen Übersetzungen vom Seitentitel.

Ursache:
Im Quellcode vom HTML sieht man dass die Links
folgenderweise erstellt werden.
|
<!--end headlines --> <div id="lang_switch"><img src="typo3temp/menu/4505c9abec.png" width="25" height="17" border="0" alt="Home" /><a href="en.html"><img src="typo3temp/menu/c457d2bfec.png" width="25" height="17" border="0" alt="Home" /> |
Es werden sollten hier die Bilder im Verzeichnis „typo3temp/menu/“ generiert werden. Es zeigte sich aber, dass anch dem löschen aller Dateien in diesem Verzeichnis keine neuen Dateien angelegt wurden. Daher wurde immer nur der „alt“ Text für die Links angezeigt.
Abhilfe:
Setzen Sie den Besitzer auf das Verzeichnis „typo3temp“ für
den Apache Server Benutzer:
„chown –R wwwrun:ftp typo3temp“
Kontrollieren Sie auch ob Schreiberechtigungen vorhanden sind:
„chmod –R 770 typo3temp“
Nach der Übersiedlung auf einen neuen Server wird die Sprachumschaltung mit seltsamen nicht erkennbaren Flaggensymbolen angezeigt.
Abhilfe:
Der Fehler konnte durch eine Änderung des Aufrufs der Flaggensymbole behoben werden.
|
… ############ Menü für Sprachumschaltung ################## temp.langmenu = COA temp.langmenu { 10 = HMENU 10 { # deutsch und englisch special = language special.value = 0,1,3
1 = GMENU 1 { noBlur = 1 NO = 1 NO { XY = [10.w]+4,[10.h]+4 backColor = white 10 = IMAGE 10.file = EXT:cms/tslib/media/flags/flag_de.gif || EXT:cms/tslib/media/flags/flag_uk.gif || EXT:cms/tslib/media/flags/flag_es.gif 10.offset = 2,2 } ACT < .NO ACT { 10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif noLink = 1 #backColor = #ff0000 } USERDEF1 < .NO USERDEF1 { 10.file = EXT:cms/tslib/media/flags/flag_de_d.gif || EXT:cms/tslib/media/flags/flag_uk_d.gif || EXT:cms/tslib/media/flags/flag_es_d.gif } USERDEF2 < .ACT } } } |
Nach Umstellung der Website auf einen neuen Server werden die Flaggensymbole für die Sprach umschaltung nicht mehr angezeigt.
Anstatt der Flaggen
wir nichts angezeigt.
Abhilfe:
Öffnen Sie das TYPO3 Install Tool und kontrollieren Sie unter „All Configuration“ ob die Option „image_processing“ aktiviert ist.

Sollte dies nicht helfen, kontrollieren Sie die Grafikfunktionen vom System wie unter Kapitel „8.4 TYPO Grafiktest durchführen“ erklärt.
Nach der Übersiedlung vom Server ist kein Login in das Install Tool möglich.

Abhilfe:
Kopieren Sie aus Ihrer lokalen „localconf.php“ Datei in
welcher Sie das Install Tool Kennwort kennen die Zeile in die „localconf.php“
Datei auf dem ISP Server. Die vorher vorhandene Zeile wird einfach remarked.
|
… #$TYPO3_CONF_VARS['BE']['installToolPassword'] = '123456068bd6b5e26ddd420bcb8f9d7f'; $TYPO3_CONF_VARS['BE']['installToolPassword'] = '3067bc5fc99d38a484a98edfc351b8a6'; … |
Kopieren Sie die Datei wieder auf den ISP Server in das „typo3conf“ Verzeichnis.
Danach können Sie das gewohnte Kennwort in das Install Tool eingeben.
|
Fatal error: Allowed memory size of 32505856 bytes exhausted (tried to allocate 35 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 79 |
Abhilfe:
Stezen Sie im TYPO3 Install Tool den Wert für „[SYS][setMemoryLimit]“ auf „64“ und versuchen Sie nochmlas den Aufruf indem Sie den Browser aktualisieren.
|
Warning: Division by zero in /“home/.sites/112/site415/typo3conf/localconf.php on line 87 |
oder

oder
|
Warning: Division by zero in /home/.sites/112/site415/web/typo3conf/localconf.php
on line 87
Oops, an error occurred! TYPO3 is an open source content management system. To maintain the quality of the system and to improve it, please help us by donating. TYPO3 CMS. Copyright © 1998-2011 Kasper Skårhøj. Extensions are copyright of their respective owners. Go to http://typo3.com/ for details. TYPO3 comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. Obstructing the appearance of this notice is prohibited by law. |
Abhilfe:
In die Date „localconf.php“ im Verzeichnis „typo3conf“
hatte sich eine Fehlerhafte Zeile eingeschlichen:
$TYPO3_CONF_VARS[„FE“][„logfile_dir“] =
‚typo3temp/log/’;
Der korrekte Eintrag ist:
$TYPO3_CONF_VARS['FE']['logfile_dir'] =
'typo3temp/log/';
Im Frontend werden Umlaute und Sonderzeichen von Menüs und Texten immer mit zwei Zeichen angezeigt z.B „ü“ mit „ü” oder “Ä” mit “Ä”

Ursache:
Eine Ursache könnte sein, dass Sie über das TYPO3 Install
Tool oder direkt in die „localconf.php“ die Option „[SYS][setDBinit]“ mit
folgende Einstellungen vorhanden ist:
|
SET NAMES utf8; SET CHARACTER SET utf8; SET SESSION character_set_server=utf8; |
Obwohl die lokale TYPO3 Installation mit „utf-8“ Zeichensatzt betrieben wurde, dürfte jetzt auf dem neuen Server diese Einstellung Probleme bereiten.
Abhilfe:
Gehen Sie in das TYPO3 Install Tool die Einträge aus dem Feld „[SYS][setDBinit]“.
Das entspricht zwei Einträgen welche Sie auf leer setzen in der „localconf.php“ im Verzeichnis „typo3conf“ und versuchen Sie nochmals den Aufruf der Webseite und aktualsieren Sie den Browser mit <F5>:
|
$TYPO3_CONF_VARS['SYS']['setDBinit'] = ''; |
Löschen Sie alle Caches (besonders die Dateien „temp_CACHED_*“) und Testen Sie die Website danach nochmals, ggf. müssen Sie den Browser mit <F5> aktualisieren.
Sehen Sie dazu auch das Kapitel „6.4.1.14 Fehler nach nach Konvertierung zu ‚utf8‘ werden Umlaute und Sonderzeichen immer mit zwei Zeichen angezeigt“.
Fatal error: Allowed memory size of 26214400 bytes exhausted (tried to allocate 2 bytes) in /home/.sites/112/site415/web/typo3/contrib/jsmin/jsmin.php on line 146
Ursache:
Eventuell ist in der Datei „localconf.php“ im Verzeichnis
„typo3 conf“ kein Eintrag für das Memory Limit vorhanden, oder der Eintrag für
das Memory Limit ist zu klein z.B.:
$TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '25'; // Modified or
inserted by TYPO3 Install Tool.
Abhilfe:
Folgenden Eintrag in der localconf.php“ ändern
|
… $TYPO3_CONF_VARS['SYS']['setMemoryLimit'] = '64'; … |
Natürlcih muss auch sichergestellt sein das in der „php.ini“ die Einstellung „memory_limit“ auf den Wert „64M“ steht.
Nach der Umstellung auf den neuen Server mit TYPO3 V4.6.x wird bei klicken auf den Tip-A-Friend Link immer nur eine leer Seite angezeigt. Unter TYPo3 V4.5.x funktioniert die Anzeige der Tip-A-Friend Seite mit den gleichen Einstellungen normal.
Ursache:
In der Tip-A-Friedn Extension (tipafriend) V1.2.4 wir eine depricated Funktion („makeInstanceClassName“) verwendet. Außderm wird die Plugin nicht mher richtig registriert. Da es noch keine neue Version diese Extension gibt muss der Fehler manuell korrigiert werden.
Abhilfe:
In der Datei „class.tx_tipafriend“ muss die depricated Funktion (Zeile 329)
$cls=t3lib_div::makeInstanceClassName('t3lib_htmlmail');
durch die neue Funktion ersetzt werden
$cls=t3lib_div::makeInstance('t3lib_htmlmail');
Zusätzlich noch im Root Template Setup-Bereich folgendes
Eintragen:
|
… # Bugfix Tip-A-Friend für TYPO3 V4.6 tt_content.list { 20 { 11 = CASE 11.key.field = layout 11.0 =< plugin.tipafriend } }
# Button für die Funktion Tip-A-Friend temp.tipafriend = COA temp.tipafriend { |
Nach einem Update auf die TYPO3 Version 4.5.x werden die Bilder, welche direkt im RTE eingefügt wurden nicht angezeigt.
Ursache:
Die Bilder wurden nicht angezeigt, wenn Sie direkt ohne anderen Text innerhalb eines <p> Tags stehen. Dies ist ein bekannter Bug.
Abhilfe:
Siehe http://bugs.typo3.org/view.php?id=17373
|
Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /srv/www/htdocs/typo3_src-4.5.15/t3lib/class.t3lib_div.php on line 6035 |
Behebung:
Geben Sie in der „php.ini“ die Timzone-Einstellung an:
„vi /etc/hph5/apache2/php.ini“
Parameter:
„date.timezone = Europe/Berlin“
Diese Fehler erscheint wenn im Backend im Root Template Setup Bereich einer Änderung durchgeführt wird. Die Seite wurd vorher von einem anderen Server übernommen und lief noch auf TYPO3 V4.2.x
|
Fatal error: Cannot re-assign $this in /srv/www/htdocs/cms/typo3conf/ext/static_info_tables/class.tx_staticinfotables_syslanguage.php on line 41 |
Behebung:
Gehen Sie in den Extension manager und führen mit „Check for extension updates“ ein Update alle aufgelisteten Extension durch. Führen Sie danahc noch im TYPO3 Install Tool ein „COMPARE“ der Datenbank aus. Versuchen Sie danach nochmals die Änderung im Root Template Setup-Bereich durchzuführen.

Behebung:
Führen Sie nochmals im TYPO3 Install Tool ein „COMPARE“ der Datenbank aus. Sollten Sie einen Fehler mit „$GLOBALS[‚LANG‘]“ erhalten suchen Sie im Internet nach einer Lösung.


Eine gute Anleitung für das Absichern einer TYPO3 Installation gibt es auf der Website:
http://www.workshop.ch/openmind/2011/06/14/typo3-security-checklist-aktualisiert/#comment-83692
WICHTIG Das Passwort für das TYPO3 Install Tool sollte, sosfort bei der Installation geändert werden. Das Passwort soll mit keinem anderen verwendeten Passwort auf diesen Server übereinstimmen, sondern nur für TYPO3 verwendet werden.
Wenn Sie auf Nummer sicher gehen wollen, dass niemand das
Install Tool verwenden kann, empfiehlt es sich das ganze Verzeichnis „install“
aus den „typo3_src-4.5.15/typo3/“ entweder umzubenennen oder zu entfernen und
an einem sicheren Ort abzulegen.
Wenn Sie dann später Änderungen über das TYPO3 Install Tool durchführen wollen, dann müssen Sie diese Verzeichnis zuerst wieder auf den ursprünglichen Namen umbenennen oder wieder in den richtigen Pfad „typo3_src-4.5.15/typo3/“ zurückkopieren.
1. Wählen Sie den Menüpunkt „All configuration“.
2. Setzen Sie den Parameter „displayErrors“ auf „0“ damit keine PHP Error auf der Website ausgegeben werden
WICHTIG Install Tool nach der Durchführung von Einstellungen immer deaktivieren nicht vergessen.
Ändern Sie den Benutzernamen „admin“ auf einen Namen Ihrer Wahl, damit dieser nicht erraten werden kann. Zusätzlich beachten Sie die Empfehlungen zur Vergabe eines sicheres Passwortes.
Verwenden Sie für Ihre TYPO3 Installation immer die aktuellsten TYPO3 Source Dateien. Das TYPO3 Source Team veröffentlicht immer nach Bekanntwerden von Sicherheitslücken eine sogeannten „Maintenance“ Version vom den TYPO3 Source Paket. Auch diese Update sollten so zeitnah wie möglich installiert werden.
Da die normale Verschlüsselung von Passwörten mit MD5 nicht mehr als ausreichend sicher betrachtet wird, empfiehlt sich der Einsatz von „saltedpassword“,
Siehe dazu Kapitel „9.1 Passwort Sicherheit erhöhen („saltedpassword)“.
Löschen Sie alle Extensions aus Ihrer TYPO3 Installation welche Sie nicht verwenden. Jede zusätzliche aktivierte Extension kann, wenn diese nicht gewartet wird ein Sicherheitsproblem darstellen.
Verwenden Sie wenn möglich nur Extension mit dem Status
„Stable“ oder „Beta“. Diese wurden schon einer Sicherheitsüberprüfung
unterzogen. Vermeiden Sie die Verwendung von Extension welche den Stauts
„Alpha“ oder sogar „Experimetal“ besitzen.
Achten Sie darauf, dass es immer wieder Sicherheitsupdates von Extension (Security Monitoring) gibt. Bei einem Sicherheitsupdate einer Extension sollte Sie zeitnah das Update dieser Extension in Ihrer TYPO3 Installation vornehmen.
Führen Sie eine Internetsuche betreffend Ihrer verwendete Extension und schon bekannter Sicherheitsprobleme durch oder Abonnieren Sie sich die vom TYPO3 Security Team (http://typo3.org/teams/security/) publizierten neu entdeckten Sicherheitslücken.
TYPO3 bietet die Möglichkeit Backend-Logins per E-Mail an einen Administrator zu melden. Dadurch erhält man Hinweise auf missbräuchliche Zugriffe oder auf Eindringversuche.
Ändern Sie dazu im TYPO 3 Install Tool folgende Einstellungen:
['BE']['warning_email_addr'] = typo3admin@mydomain.com
['BE']['warning_mode'] = 1
In der BE bei „Benutzer“ und „Einstellungen“ können Sie dann für jedem Benutzer festlegen ob eine Email versendet werden soll.
Sie können die vorhandene “typo3conf/locallang.php” Datei an eine Position außerhalb des Root Verzeichnisses des Webservers transferieren. In der alten “typo3conf/locallang.php” Datei wird nur ein absoluter Verweis auf die Position originale Datei eingetragen. Manche Argumentationen bezeichnen das Vorhandensein der Konfigurationsdatei im Webroot als Sicherheits Problem.
Erzeugen Sie eine Datei z.B. "/home/mydir/localconf.php" und kopieren Sie Ihre Konfiguration in diese Datei. Dann ändern Sie die alte "typo3conf/localconf.php" auf folgende Einträge um:
|
<?php require("/home/mydir/localconf.php"); ?> |
Deaktivieren vom "Directory listing" des Webservers oder alternative eine leere "index.html" in die Verzeichnisse “uploads/“, „typo3conf/“ oder „fileadmin/“. Damit können Website Benutzer die TYPO3 Verzeichnisse nicht mehr auflisten (browse).
Folgende Pakte können nach Durchführung alle Installationen entfernt werden:
apache2-devel, mysql-devel, libpng-devel, gcc, autoconf, mak, automake, bison, flex,xdevel und patch
Hinweis Im Prinzip stellen alle „devel“ Pakete und das Vorhandensein eines Compilers wie „gcc“ ein Sicherheitsproblem dar, welches für Angriffe genutzt werden kann. Wenn Sie auf Nummer sicher gehen wollen entfernen Sie den Compiler und alle „devel“ Pakete wieder vom Server.
Schalten Sie die Error Ausgabe von PHP Fehlern ab, damit keine Systeminformationen den normalen Benutzern angezeigt werden. In einen Entwicklungssystem sollte Sie der “display_error” wider eingeschaltet werden.
|
… log_errors = On display_errors = Off … |
Zusätzlich kann “open_basedir” und “safe_mode” für den Server eingeschaltet werden. Bei den meisten gehosteten Sites ist dies vom Hosting Provider konfiguriert.
Verwenden Sie für die TYPO3 Datenbank nicht normalen Super User („root“) der MySQL Datenbank (der alles darf). Legen Sie einen User in der MySQL Datenbank an, der nur die TYPO3 zugehörige Datenbank sehen und bearbeiten darf d.h. es muss eine Zuordnung zur Datenbank geben. Zusätzlich legen Sie einen eigenen Benutzer in MySQL für den „phpMyAdmin“ an, der auch alle TYPO3 Datenbank verwalten darf.
Hinweis Sie können den „phpMyAdmin“ auf einem lokalen Server auf zwei verscheiden Arten installieren. Als seperates Linus Programmpaket oder als TYPO3 Extension. Wenn sich Ihre TYPO3 Site bei einem Internet Service Provider (ISP) befindet wird der „phpMyAdmin“ meist vom ISP über eine Website zur Verfügung gestellt.
Sollten keine externe „phpMyAdmin“ Verwaltung zur Verfügung stehen, können Sie diesen auch als TYPO3 Extension installieren.
User in MySQL für den phpMyAdmin an der auch nur wieder die TYPO3 Datenbank verwalten darf. Zuletzt wird phpMyAdmin auf die „Cookie Authentication“ umgestellt. Damit ist der eingeloggte Benutzer in der Lage seine zugeordnete Datenbank zur Bearbeitung anzuzeigen.
Zur Erhöhung der Sicherheit geben Sie in das Feld „Allowed IPs“ die IP-Adressen ein von welchen ein Zugriff auf „phpMyAdmin“ erlaubt werden soll. Wenn Sie nur einen lokalen Zugriff am Server erlauben wollen geben Sie „127.0.0.1“ (für IPv6 „::1“) ein.


Abhilfe:
Gehen Sie in den „Extension Manager“. Wählen Sie die Extension „phpMyAdmin“ aus und führen nochmals „Aktualsieren“ aus.
1. Einen Super User für MySQL einrichten der alles darf. Dieser Super User sollte nur selten benutzt werden und ganz sicher nicht von TYPO3.
2. Wenn Sie „phpMyAdmin“ als externe Anwendung verwenden, sollten Sie noch einen Benutzer anlegen der alle die „mysql“ Datenbanken verwalten darf. Dieser Benutzer wird als „phpMyAdmin“ Benutzer bezeichnet. Der Benutzer besitz aber sonst keine Rechte auf andere Datenbanken.
3. Pro TYPO3 Datenbank wird jeweils ein Benutzer mit den Anmeldinformationen für TYPO3 ersetllt (wird in „localconf.php“ eingetragen). Diese Benutzer sollten aber nur Rechte auf zugehörige Datenbank dieser TYPO3 Instanz haben.
Aufruf von „phpMyAdmin“ als externe Anwnedung mit Eingabe von folgenden URL:
http://localhost/dimpa
Hinweis Wobei „dimpa“ hier für das Verzeichnis steht in welchen Sie Ihren phpMyAdmin installiert haben. Sie sollten für das Verzeichnis generell nicht „phpMyAdmin“ verwenden, da dieses Verzeichnis immer wieder bei Attacken von Hackern verwendet wird.
Dieser Benutzer ist nur notwendig wenn Sie den „phpMyAdmin“ als externe Anwendung ausführen. Der Benutzer darf die „mysql“ Datenbanken verwalten und neue Benutzer anlegen sowie Berechtigungen vergeben. Er besitzt aber keine Rechte auf die einzelnen TYPO3 Datenbanken.
Gehen Sie dazu in den „phpMyAdmin“ und führen Sie folgendes aus:
1. Wählen Sie aus
den angezeigten Menüpunkten auf der Startseite „Rechte“ aus.
2. Klicken Sie auf
den Menüpunkt „Neuen Benutzer anlegen“.
![]()
3. Geben Sie einen
Benutzer wie z.B. „pmauser“ als Host „localhost“ und ein sicheres Passwort für
den Benutzer ein.
4. Lassen Sie
„Datenbank für den Benutzer“ auf „Kein(e)“ stehen und vergeben Sie keine
globalen Rechte für diesen Benutzer.
5. Klicken Sie auf
„Erzeuge Benutzer“
6. Gehen Sie unter
Aktionen bei diesen Benutzer auf „Rechte ändern“.
7. Wählen Sie unter
„Datenbankspezifische Rechte“ im DrowpDown Feld die Datenbank „mysql“
aus.
8. Wählen Sie bei
den Berechtigungen „Alle auswählen“ aus.
9. Kliecken Sie
danch unter dieser Rubrick auf „Ok“.
Gehen Sie dazu in den „phpMyAdmin“ und führen Sie folgendes aus:
10. Wählen Sie aus den angezeigten
Menüpunkten auf der Startseite „Rechte“ aus.
11. Klicken Sie auf den Menüpunkt „Neuen
Benutzer anlegen“.
Geben Sie einen Benutzernamen wie z.B. „bfdt3db“ für diesen Benutzer ein.
Hinweis Den Benutzernamen so wählen, dass er nicht
einfach zu erraten ist. Das heißt nicht einfach „typo3“ oder dergleichen
verwenden.
Bei der Auswahl „Host:“ wählen Sie „localhost“ aus.
Geben Sie in die beiden nächsten Felder das Passwort für den Benutzer ein.

12. Lassen Sie die Auswahl „Datenbank
für Benutzer“ auf „Kein(e)“ stehen.

13. Klicken Sie unter der Rubrik „Globale
Rechte“ nichts an.

14. Klicken Sie auf „Erzeuge
Benutzer“ damit der Benutzer angelegt wird.
15. Wählen Sie bei dem Benutzer die
Aktion „Rechte ändern“ aus.

16. Geben Sie zur der Rubrik „Datenbankspezifische
Rechte“. Wählen Sie im DrowDown Feld bei „Rechte für folgende Datenbank
hinzufügen“ den Namen Ihrer Datenbank aus, auf welche dieser Benutzer Zugriff
erhalten soll.

17. Erscheint danach gleich das
Fenster zur Vergabe der Berechtigunge auf diese Datenbank. Vergeben Sie die
Berechtigungen so wie in der Abbildung angezeigt.

Hinweis Die Berechtigung „DROP“ wurde hier bewußt
nicht vergeben da der normale Backend Benutzer nachdem die TYPO3 Installation
fertiggestellt wurde keine Berechtigun braucht um Tabelle zu entfernen.
18. Klicken Sie danach auf das „Ok“
das sich unterhalb dieser Rubrik befindet.
19. Klicken sie jetzt nochmals in der
Haupauswahl auf „Rechte“. Wählen Sie den neuen Benutzer aus und klciken
Sie auf „Rechte ändern“. Sie sollten jetzt unter „Datenbankspezifische
Rechte“ folgendes sehen.

20. Der Benutzer besitzt jetzt nur spezielle Rechte auf diese Datenbank.
Öffnen Sie die Datei „typo3conf/localconf.php“ suchen Sie die unten angeführten Optionen und ändern Sie den Benutzernamen und das Passwort auf den vorher angelegten Benutzer um:
„$typo_db_username = ‚ bfdt3db’;“
„$typo_db_host = ‚localhost’;“
„typo_db_password = ‚password’;“
Damit benutzt TYPO3 diesen Benutzer für den Zugriff auf die MySQL Datenbank.
Hinweis Ersetzen Sie den Text „passwort“ und vergeben Sie pro Datenbank immer ein eigenes Passwort, dass den Empfehlungen für einen ausreichende Passwortsicherheit entspricht.
Suchen Sie die Datei „config.inc.php“ im Verzeichnis „/srv/www/htdocs/phpmyadmin/“ (je nach Installation unterschiedlich).
Machen Sie von dieser Datei eine Sicherheitskopie.
Öffnen Sie die Datei „config.inc.php“
Setzen Sie in der Konfigurationsdatei den absoluten URL des Servers (oder alternativ die Warnung ausschalten).
„$cfg[‚PmaAnbsoluteUri’] = http://<hostname>/phpMyAdmin’
Es gibt für phpMyAdmin drei Authentication Methoden:
config: phpMyAdmin kann nur mit einer Userkennung arbeiten. Username und Passwort stehen im Klartext in der „config.inc.php“.
http: Konfiguration der Zugangsbeschränkung über Apache mit „.htaccess“ und MySQL
cookie: Konfiguration der Zugangsbeschränkung über Apache, MySQL und Cookies. Genau so sicher wie „http“, funktioniert aber besser mit diversen Browsern. Der Vorteil dieser Methode ist verschiedene User können flexible im MySQL angelegt werden und sich durch phpMyAdmin authentisieren. Die Rechtevergabe erfolgt und kontrolliert MySQL. Das Programm phpMyAdmin selbst, authentisiert sich gegenüber von MySQL als ein User, der so gut wie keine Rechte (außer auf die TYPO3 Datenbank) hat.
MySQL Passwort des Users „phpMyAdmin“ in phpMyAdmin eintragen in die Datei „…/lampp/phpmyadmin/config.inc.php“:
|
$cfg[‚Server’][$i][‚controluser’] = ‚pmauser’; $cfg[‚Server’][$i][‚controllpassword’] = ‘password’; $cfg[‚Server’][$i][‚auth_type’] = ‘cookie’; $cfg[‚Server’][$i][‚user’] ) = ‘’; $cfg[‚Server’][$i][‚password’] = ‘’; |
Hinweis Damit wird das Programm “phpMyAdmin” gegenüber von MySQL mit dem User “pmauser” authentifiziert. Der Benutzer „pmauser“ besitzt so gut wie keine Rechte (auf die Anwendungs-Datenbanken), sondern nur auf die Datenbank „mysql“ und „phpmyadmin“.
Hier wurde z.B. im TYPO3 Setup Bereich eine PHP-Skript Datei geladen:
|
… page.30.file = fileadmin/templates/scripts/lang_menu.php … |
Inhalt der PHP-Datei:
|
// First, select all pages_language_overlay records on the current page. Each represents a possibility for a language. $query = "SELECT * FROM pages_language_overlay WHERE pid=".$GLOBALS["TSFE"]->id.$GLOBALS["TSFE"]->sys_page->enableFields("pages_language_overlay")." GROUP BY sys_language_uid"; |
Hier wird ein direkter „SELECT * FROM pages_language_overlay…“ durchgeführt. Dies sollte in der neuen Version nur mehr über „SELECTquery“ erfolgen.
Abhilfe:
Bearbeiten sie die alte SQL Abfrage nach folgendem Schema damit diese von einer neuen TYPO3 Version akzeptiert wird:
|
|
Dies würde als Ergebnis für die alte PHP Datei folgendes
ergeben:
|
// First, select all pages_language_overlay records on the current page. Each represents a possibility for a language. $query = $GLOBALS['TYPO3_DB']->SELECTquery('*', 'pages_language_overlay','pid=”.$GLOBALS[“TSFE”]->id.$GLOBALS[“TSFE”]->sys_page->enableField(“pages_language_overlay”).”,’sys_language_uid',’’,’’); $res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db, $query); |
$this->cObj->data['uid']
ist die uid vom aktuellem Content-Objekt.
$GLOBALS["TSFE"]->id
ist die uid der aktuellen Seiten,
sollte normalerweise ident sein mit:
$this->cObj->data['pid']
$pidList =
$this->pi_getPidList($this->cObj->data['pages'],$this->conf["recursive"]);
oder direkt mit
$pidList = $this->cObj->data['pages']