Umzug von TYPO3 4.2.15 auf einen neuen Server und Upgrade [Gelöst]

  • gerik gerik
    T3PO
    0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    29. 05. 2011, 12:26

    Hallo Zusammen,

    ich habe versucht ein TYPO3 4.2.15 System auf einem neuen Server auf 4.5.3 upzugraden. Das ist erstmal schief gelaufen. Jetzt möchte ich die Schritte zerlegen und erstmal nur das bestehende TYPO3-System portieren und dann in einem zweiten Schritt upgraden.

    Ich habe mit mysqldump DB -uadmin -ppassword > TYPO3.sql.dump einen Auszug aus der Datenbank erstellt. Anschließend habe ich mit scp die Datenbank und alle Verzeichnisse vom ursprünglichen Host auf den neuen Host rübergeschoben. Die Domäne habe ich bei dieser Gelegenheit auch gleich umbenannt um das Originalsystem parallel online zu haben. Mit fgrep 'alte-domäne.de' überprüft, ob noch irgendwo in einer Datei die URL vorkommt und entsprechend abgeändert. Auch die SQL-Datenbank diesbezüglich überprüft. Localconf.php habe ich natürlich auch gleich geändert und mit mysql DB -uadmin -ppassword < TYPO3.sql.dump die Datenbank zurückgelesen. Seltsamer Weise gab es bei Compare with $TCA Inkonsistenzen, Update required tables COMPARE durchgeführt und "Alter Table" ausgeführt, danach dann kam der Status "All fields and tables configured in $TCA appeared to exist in the database as well". Mir ist nicht klar, weshalb das passiert ist, da ich doch mit mysqldump und mit mysql die Datenbank 1:1 zurückgelesen habe.

    Fazit: Back-End läuft, im Frontend habe ich das Template, aber ohne Inhalte aus dem Backend. Was kann der Fehler sein? Kann doch ein Problem mit backup mit mysqldump und beim restore mit mysql entstanden sein?

    Realurl habe ich deaktiviert. Habe ich etwas übersehen? Mit chmod 777 habe ich zur Vereinfachung mal alle Schreibrechte vergeben.

    Hier mein Template:

    page.meta.verify-v1 = JqqUM5i1gj6UwL0jqJ79dlQGwWPj0MpV11nPJFG4IO0=
    styles.content.imgtext.captionSplit=1 #Verschiedene Captions getrennt

    page.config.metaCharset = utf-8
    page.config.additionalHeaders = Content-Type:text/html;charset=utf-8
    page.config.metaCharset = utf-8
    page.config.additionalHeaders = Content-Type:text/html;charset=utf-8

    #AWStats
    config.stat = 1
    config.stat_apache = 1
    config.stat_apache_logfile = logfile.log
    // you can use this if you want database logging also but it's not needed
    config.stat_mysql = 1

    ##Suchmaschinenoptimierung
    ##VALID Quellcode
    config {
    doctype = xhtml_trans
    xmlprologue = none
    xhtml_cleaning = all
    htmlTag_setParams = xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de"
    }

    ##Für Suchmmaschinen
    #config.simulateStaticDocuments = 1
    #config.simulateStaticDocuments_noTypeIfNoTitle = 1

    #Realurl + Chinese (von Benjamin Geyer)
    includeLibs.pagetitle = fileadmin/scripts/pagetitle.php

    # RealURL aktivieren
    config.simulateStaticDocuments = 1
    config.baseURL = http://www.neuetestdomain.com/
    config.tx_realurl_enable = 0
    config.prefixLocalAnchors = all

    ##ADMIN Paneln für swap77
    config.admPanel = 0
    admPanel {
    enable.edit = 0
    }

    # ------------------------------
    # Breadcrumbs Path menu cObject
    # ------------------------------

    #Für die Fähnchen im Backend??
    mod.SHARED {
    defaultLanguageFlag = fileadmin/img/en.gif
    defaultLanguageLabel = English
    }

    # Remove L-Bug
    config.uniqueLinkVars = 1

    # Localization
    #config.sys_language_mode = content_fallback

    #config.sys_language_mode = content_fallback; 1,0

    #config.sys_language_overlay = hideNonTranslated

    config.removeDefaultJS = external
    config {
    language = en
    locale_all = en_US
    removeDefaultJS = external
    spamProtectEmailAddresses=1
    spamProtectEmailAddresses_atSubset = (at)
    linkVars=L
    disablePrefixComment = 1
    inlineStyle2TempFile=1
    }

    mod.SHARED.defaultLanguage.title = English
    mod.SHARED.defaultLanguage.flag = fileadmin/img/en.gif
    mod.SHARED {
    defaultLanguageLabel = Englisch
    defaultLanguageFlag = fileadmin/img/en.gif
    }

    config {
    extTarget = _blank
    linkVars = L
    sys_language_uid = 0
    language = en
    locale_all = en_EN
    xhtml_cleaning=all
    }

    #schaltet die indizierung für externe Elemente, wie pdf-Datein ein
    config.index_externals = 1
    plugin.tx_indexedsearch._DEFAULT_PI_VARS.lang = 0
    config.index_enable = 1

    #W3C Validation
    page.config.doctype = xhtml_trans

    plugin.tx_indexedsearch._LOCAL_LANG = en
    plugin.tx_macinasearchbox_pi1 {
    #Streiche 83, Setze 65#
    pidSearchpage = 65
    }

    ### pagetitle ###
    includeLibs.pagetitle = fileadmin/scripts/pagetitle.php

    #http://typo3.org/documentation/document-library/core-documentation/doc_l10nguide/1.0.0/view/1/2/#id2796573

    plugin.tx_rlmplanguagedetection_pi1 {
    defaultLang = en
    }

    # die Variable zur Sprachauswahl wird definiert
    config.linkVars = L

    #config.sys_language_overlay = 1
    [globalVar = G:L = 0]
    config.linkVars = L
    config.sys_language_uid = 0
    config.language = en
    config.locale_all = en_GB

    # English language, sys_language.uid = 1
    [globalVar = GP:L = 1]
    config.sys_language_uid = 1
    config.language = de
    config.locale_all = de_DE

    [globalVar = GP:L = 2]
    config.sys_language_uid = 2
    config.language = es
    config.locale_all = spanish

    [globalVar = GP:L = 3]
    config.sys_language_uid = 3
    config.language = fr
    config.locale_all = french

    [globalVar = GP:L = 4]
    config.sys_language_uid = 4
    config.language = cn
    config.locale_all = chinese

    #Workaround, da vom Firefox 3.0 unter linux L=7 übermittelt wird.
    [globalVar = GP:L = 7]
    config.sys_language_uid = 7
    config.language = en
    config.locale_all = english

    plugin.te_pagetitle.title = ###subtitle###
    [else]plugin.te_pagetitle.title = ###title###
    [end]config.titleTagFunction = user_pagetitle_class->changetitle

    [global]# Defining the Subpart "sprache"
    temp.sprache = PHP_SCRIPT
    temp.sprache.file = fileadmin/template/main/sprache.php

    # Substitute the ###SPRACHE### subpart
    subparts.sprache < temp.sprache

    # ------------------------------
    # Breadcrumbs Path menu cObject
    # ------------------------------

    temp.crumbs = HMENU
    temp.crumbs.special = rootline
    temp.crumbs.1 = TMENU
    temp.crumbs.1.NO {
    linkWrap = |*| | >  |*| |
    ATagParams = class="crum_bar"
    }

    marks.BIBLIOGRAPHY = COA
    marks.BIBLIOGRAPHY = FILE
    marks.BIBLIOGRAPHY.file = fileadmin/bibliography.html

    # 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 = 81
    }
    temp.tipafriend.typolink.target = _self

    #----------------------------------------
    # Configuring the Auto-Parser for main template:

    plugin.tx_automaketemplate_pi1 {
    # Read the template file:
    content = FILE
    content.file = fileadmin/template/main/template_1.html

    # Here we define which elements in the HTML that
    # should be wrapped in subpart-comments:

    elements {
    BODY.all = 1
    BODY.all.subpartMarker = DOCUMENT_BODY
    HEAD.all = 1
    HEAD.all.subpartMarker = DOCUMENT_HEADER
    HEAD.rmTagSections = title
    TD.all = 1
    }

    # Prefix all relative paths with this value:
    relPathPrefix = fileadmin/template/main/
    }

    # Menu 1 cObject
    temp.menu_1 = HMENU
    # First level menu-object, textual
    temp.menu_1.1 = TMENU
    temp.menu_1.1 {
    # Normal state properties
    NO.allWrap = <div class="menu1-level1-no"> | </div>
    # Enable active state and set properties:
    ACT = 1
    expAll = 0
    ACT.allWrap = <div class="menu1-level1-act"> | </div>
    }

    # Second level menu-object, textual
    temp.menu_1.2 = TMENU
    temp.menu_1.2 {
    # Normal state properties
    NO.allWrap = <div class="menu1-level2-no"> | </div>
    # Enable active state and set properties:
    ACT = 1
    ACT.allWrap = <div class="menu1-level2-act"> | </div>
    }

    # Third level menu-object, textual
    temp.menu_1.3 = TMENU
    temp.menu_1.3 {
    # Normal state properties
    NO.allWrap = <div class="menu1-level3-no"> | </div>
    # Enable active state and set properties:
    ACT = 1
    ACT.allWrap = <div class="menu1-level3-act"> | </div>
    }

    # Fourth level menu-object, textual
    temp.menu_1.4 = TMENU
    temp.menu_1.4 {
    # Normal state properties
    NO.allWrap = <div class="menu1-level4-no"> | </div>
    # Enable active state and set properties:
    ACT = 1
    ACT.allWrap = <div class="menu1-level4-act"> | </div>
    }

    # Main TEMPLATE cObject for the BODY
    temp.mainTemplate = TEMPLATE
    # Main TEMPLATE cObject for the BODY
    temp.mainTemplate = TEMPLATE
    temp.mainTemplate {
    # Feeding the content from the Auto-parser to the TEMPLATE cObject:
    template =< plugin.tx_automaketemplate_pi1
    # Select only the content between the <body>-tags

    workOnSubpart = DOCUMENT_BODY

    # Substitute the ###menu_1### subpart with dynamic menu:

    subparts.menu_1 < temp.menu_1
    # Substitute the ###content### subpart with some example content:

    subparts.content < styles.content.get

    # displaying the tip-link
    subparts.tip = TEXT
    subparts.tip < temp.tipafriend

    subparts.langmenu = PHP_SCRIPT
    subparts.langmenu.file = fileadmin/template/main/sprache.php
    subparts.footer = TEXT
    subparts.footer.value = Testfooter
    subparts.crumbs < temp.crumbs
    subparts.test = TEXT
    subparts.test.value = En subpart er blevet erstattet!!

    }

    # Main TEMPLATE cObject for the HEAD

    temp.headTemplate = TEMPLATE

    temp.headTemplate {

    # Feeding the content from the Auto-parser to the TEMPLATE cObject:

    template =< plugin.tx_automaketemplate_pi1

    # Select only the content between the <head>-tags

    workOnSubpart = DOCUMENT_HEADER

    }

    # Default PAGE object:
    page = PAGE
    page.typeNum = 0

    # Copying the content from TEMPLATE for <body>-section:
    page.10 = PHP_SCRIPT
    page.10.file = fileadmin/template/main/sprache.php
    page.10 < temp.mainTemplate

    # Copying the content from TEMPLATE for <head>-section:
    page.headerData.10 < temp.headTemplate
    config.language = en
    styles.content.lastUpdate.strftime = %e. %B %Y
    page.10.65 < styles.content.lastUpdate

    Viele Grüße
    Gerik


  • 1
  • alexander_ro alexander...
    Padawan
    0 x
    61 Beiträge
    0 Hilfreiche Beiträge
    03. 06. 2011, 18:17

    Hi,

    ich bin mir nicht sicher aber kann es daran liegen das Du "css sytled contet" nicht ausgewählt hast?

    Zu finden hier: Template/Vollständigen Template-Datensatz bearbeiten/Enthält

    Vielleicht hilfts ja ...

    Grüße
    Alexander

  • lisardo lisardo
    Jedi-Meister
    0 x
    306 Beiträge
    0 Hilfreiche Beiträge
    03. 06. 2011, 20:01

    Hallo,

    Umzüge von TYPO3-Installationen sind bei mir alltäglich, jedes Projekt zieht mindestens dreimal um: vom lokalen Entwicklungsserver auf einen DEV-Server mit Kundenzugriff und schließlich auf den Life-Server. Das sollte eigentlich völlig schmerzfrei sein.

    1. Dump der Datenbank anlegen
    2. auf dem Zielsystem den TYPO3-Sourcecode in der gleichen Version aufspielen wie auf dem Quellsystem. Oder vom Quellsystem auf das Zielsystem kopieren.
    3. diese Ordner von Quellsytem auf das Zielsystem übertragen:
    - typo3conf
    - uploads
    - fileadmin
    auf dem Zielsystem einen leeren typo3temp-Ordner anlegen. Nicht den originalen umkopieren.
    4. Dump auf Zielsystem wieder einspielen.
    5. die localconf.php anpassen und dort die Daten der neuen DB eintragen
    6. Das Backend öffnen und das Install-Tool aufrufen. (Oder direkt das Install-Tool) Dort die Einstellungen für Imagemagick & co. erledigen (weil das auf dem Zielsystem u. U. woanders liegt).
    7. im Typoscript im Setup die neue BaseURL eintragen und ggf. den Domainrecord ändern (falls einer eingetragen wurde).
    8. die htaccess-Datei anpassen.
    9. Cache löschen.

    Also nicht die Datenbank durchforsten und da evtl. manuell die Domains löschen, das macht keinen Sinn. Sobald die Seiten erneut aufgerufen werden, werden die Links alle neu gerendert und bekommen automatisch die neue Domain. Und schon gar nicht die Sourcen von TYPO3 durchsuchen und ändern ... abgesehen davon sollte ausser in einem Typoscript nirgends die Domain drin stehen (natürlich ausser in den Cache-Dateien ...).

    Ggf. nochmals im Install-Tool kontrollieren, ob alle Server-Einstellungen auch wirklich passen: Bild-Rendering, E-Mailversand etc.

    Probleme gibts eigentlich nur, wenn die Serverkonfiguration fehlerhaft ist: falsche PHP-Konfiguration, kein Imagemagick oder Graphicsmagick etc.

    Wenn es sich um ein Update handelt, folgen danach die Updateschritte:
    - deaktivieren problematischer Extensions
    - Updaten problemloser Extensions
    - austauschen der Sourcen
    - Update-Schritte im Install-Tool
    - Compare
    - Chache löschen.

    Testen und die problematischen Extensions nach und nach dazuschalten.

    ---
    was bei dir schief gegangen ist, kann ich nicht sagen. Wenn du diese Schritte durchführst sollte es klappen.

    Gruß
    Peter

  • gerik gerik
    T3PO
    0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    16. 06. 2011, 23:52

    Hallo,
    ich bekomme es immer noch nicht hin. #angry#
    css sytled contet hat tatsächlcih gefehlt, obwohl ich mit mysql den DUMP zurückgespielt habe. .htaccess, baseURL, typo3temp neu, rechte, compare, habe ich alles durch und immer noch nciht den Fehler gefunden. Das funktionierende Altsystem läuft auf einem SUSE, das neue System auf einem CentOS (beides 1&1). Das Ergebnis ist zu finden auf http://www.applied-biometrics.com (Altsystem) und http://www.appliedbiometrics.com. Vielleicht hat jemand eine Idee. Es kann doch nicht an der Distribution liegen. Immerhin habe ich 1:1 mit scp und mysqldump kopiert.
    Viele Grüße
    Gerik

  • gerik gerik
    T3PO
    0 x
    10 Beiträge
    0 Hilfreiche Beiträge
    25. 06. 2011, 18:59

    Hallo,
    ich habe es jetzt nochmal neu installiert. Jetzt läufts.
    Viele Grüße
    Gerik

  • 1