[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4? - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

12. Mär 2013, 23:02

Hallo,

manche unserer betreuten Websites sind bei 1&1 gehostet und verwenden noch Redaxo 3.2, 4.1 oder 4.2. Bekanntlich wird bei 1&1 ab 01.04. nur noch PHP 5.4 angeboten. Auf welche Redaxo-Version würdet ihr updaten? Wichtig ist, dass TinyMCE weiterhin fehlerfrei funktionieren muss. Kann eine Redaxo-4.1-Website auch einfach ohne Update an PHP 5.4 angepasst werden? (nicht alle Kunden möchten ein Update)
MfG
cmsbauer

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

12. Mär 2013, 23:40

Hi,

ich würde einfach die Warnungen unterdrücken. Das sollte aber bei jedem Livesystem der Fall sein.

Ein Update auf 4.5 ist zwar möglich, kann aber je nach Addons, die verwendet werden, schwierig werden. (TinyMCE ist schon mal kein Problem.)
LG,
Xong

[ externes Bild ] Määääääääääääääääääääääääh!

cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 00:06

Danke für die schnelle Antwort. Genügt es bei 4.1 tatsächlich nur die Static-Meldungen zu unterdrücken? Was ist bei Redaxo 3.1? Wenn ich testweise kurz die PHP-Version erscheinen hier auf den ersten auch nur Static-Fehlermeldungen?
MfG
cmsbauer

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 11:13

Moin!

Ich habe mittlerweile diverse Seiten von 3.2 auf 4.4.1 upgedatet und dabei immer mitgeschrieben.
Mittlerweile schaffe ich das Update in einer Stunde ... vilelleicht hilft es euch auch.

- Sprache (clang) ist hier nicht berücksichtigt
- Kollation der alten Datenbank ist latin1_swedish_ci, Kollation der neuen Datenbank ist UTF-8 (ist aber, denke ich, egal bei meiner Vorgehensweise)

Optimale Voraussetzungen für ein nahezu nahtloses Update, ohne dass die Seite länger als enige Minuten vom Netz ist:

- mindestens eine zweite, freie DB auf dem webserver
- neue Subdomain auf dem webserver
- lokale Entwicklungsumgebung mit aktuellen MYSQL und PHP-Versionen, z.B. XAMPP (bei mir: REDAXO: 4.4.1, PHP: 5.4.7, MySQL: 5.5.27 )

... und los gehts ... ABER ALLES OHNE GEWÄHR !!!

#######################################################################

1. Subdomain auf web-Server anlegen
Unbedingt zuerstmachen, weil 1und1 sehr lahm beim Einrichten ist. Und nicht eingeloggt bleiben, da sonst der Domain-Status einfriert ("...wird angelegt") und man nicht weiterkommt! (Ganz nebenbei: dies ist vielleicht eine gute Gelegenheit, sich von diesem besch....eidenen Provider zu trennen. Meine Empfehlung: domainfactory)

2. Redaxo 4.4.1 local leer installieren (charset UTF-8)

3. evtl. weitere wichtige Ordner vom Server kopieren (js, css, pics, lb_images etc. ... was halt gebraucht wird) Den alten Files-Ordner habe ich meist nicht vom Server geholt, das war mir zu viel Download .... hier habe ich nur die css-Dateien heruntergeladen )

4. fehlende Addons installieren (mir fehlte immer das image_resize-Addon) Ich empfehle auf jeden Fall zusätzlich developer und das metafix-plugin

Die alte Datenbank muss im Kompatibilitätsmodus MYSQL40 exportiert werden, das kriegt die olle phpMyAdmin auf dem 1und1 Server aber nicht hin.
Lösung:

5. Allen Redakteuren den Zugang sperren, damit während des Updates keine Eingaben durch Dritte erfolgen, die dann evtl. nicht mit übernommen werden.

6. Die alte Datenbank über REDAXO-Export exportieren, in der Export-Datei "TYPE=MYISAM" durch "ENGINE=MYISAM" und "timestamp" durch "int" ersetzen und das ganze in eine die alte lokale REDAXO-Installation importieren (die wird zwar lokal auf PHP5.4.7 nicht ordentlich laufen, aber wir brauchen ja nur die alte DB-Struktur in einer neuen phpMyAdmin-Umgebung ...

7. alte DB-Struktur vor Export anpassen

Vor dem Export sind einige Änderungen an der alten Datenbank (3.2) notwendig, um den unterschiedlichen Strukturen gerecht zu werden. Ich habe alle notwendigen Änderungen zu einem SQL-Aufruf zusammengefasst:

Code: Alles auswählen

// -------  ÄNDERUNGEN IN DER ALTEN DATENBANK (local) VOR DEM EXPORT  -------------- //

ALTER TABLE `rex_article`
DROP `cattype`, 
DROP `alias`, 
DROP `fe_user`, 
DROP `fe_group`, 
DROP `fe_ext` , 
CHANGE `description` `art_description` TEXT  NOT NULL ,
CHANGE `attribute` `attributes` TEXT NOT NULL ,
CHANGE `file` `art_file` VARCHAR( 255 ) NOT NULL ,
CHANGE `type_id` `art_type_id` VARCHAR( 255 ) NOT NULL ,
CHANGE `teaser` `art_teaser` VARCHAR( 255 ) NOT NULL ,
CHANGE `online_from` `art_online_from` TEXT NOT NULL ,
CHANGE `online_to` `art_online_to` TEXT NOT NULL ,
CHANGE `keywords` `art_keywords` TEXT NOT NULL ; 

ALTER TABLE `rex_article_slice` 
ADD `next_article_slice_id` INT( 11 ) NULL DEFAULT NULL ,
ADD `revision` INT( 11 ) NOT NULL DEFAULT '0' ;

ALTER TABLE `rex_file` 
CHANGE `description` `med_description` TEXT  NOT NULL ,
CHANGE `copyright` `med_copyright` VARCHAR( 255 ) NOT NULL DEFAULT '' ;

ALTER TABLE `rex_file_category` 
DROP `hide` ;

ALTER TABLE `rex_modultyp`
DROP `label`,
DROP `bausgabe`,
DROP `func`,
DROP `php_enable`,
DROP `html_enable`,
DROP `perm_category` ;

ALTER TABLE `rex_template`
DROP `bcontent`,
DROP `date` ;

RENAME TABLE `rex_modultyp` TO `rex_module` ;


// ------------------------------------------------------------------------ //
8. Tabellen exportieren (nur Daten!):

- Zeichencodierung beim Export: UTF-8
- Ausgabe-Kompatibilität MYSQL40

// ------------------------- EXPORT ---------------------------------- //

Tabelle rex_article
Tabelle rex_article_slice
Tabelle rex_file
Tabelle rex_file_category
Tabelle rex_module
Tabelle rex_template

// ------------------------------------------------------------------------ //

9. Export in neue DB importieren ( nur INSERT ohne CREATE ! ), wieder Kompatibilitätsmodus MYSQL40

10. Actions im backend neu anlegen (habe ich per copy/paste gemacht, der alte DB-Aufbau war mir hier zu cryptisch) und den Modulen zuweisen (man bekommt leicht raus, welche Action an welchem Modul hängt, wenn man versucht, die Actions zu löschen)

Die rexname-Action hierbei komplett ersetzen:

Code: Alles auswählen

// --- neue rexname-action:  --------------------------------------------

<?php
$rexname = rex_request("rexname","array");
$newname = "";
for ( $c = 0; $c < 100; $c++ ) {
if (isset($rexname[$c])) { $newname .= $rexname[$c] . '~~'; }
else { $newname .= '~~'; }
}
if ( isset($REX_ACTION['VALUE'][1]) and $REX_ACTION['VALUE'][1] != '') {
$rexname = explode('~~', $REX_ACTION['VALUE'][1]);
} else {
$REX_ACTION['VALUE'][1] = $newname;
}
?> 
11. ctypes in der neuen Datenbank um 1 erhöhen (ctype 0 gibt es nicht mehr!)

Code: Alles auswählen

UPDATE rex_article_slice SET ctype = ctype + 1 ;
12. In den Templates charset auf UTF-8 umstellen, ctypes einen höher stellen und ctypes im Backend neu definieren, ausserdem darauf achten, ob description und Keywords korrekt vererbt werden!

13. Module, Actions und Templates auf veraltetes PHP überprüfen und korrigeren

Oft zu finden waren "split" statt "explode" und "<?" statt "<?php"
Ausserdem muss der alte rex_wysiwyg_editor ersetzt werden (z.B. durch durch tinyMCE )

Die Kontrolle geht am Besten mit dem developer-Addon

Wenn local alles läuft (die Fehler wegen der fehlenden Files ignoriere ich):

14. Articlecache löschen, Textile-Addon erstmal deinstallieren und löschen (macht Ärger beim Installieren auf dem webserver) und neue DB local per Redaxo auf Server exportieren (damit die nach dem Upload auf den webserver in REDAXO verfügbar ist)

15. das komplette neue Netz (ohne files-Ordner) auf die Subdomain laden (oft wird auch der Odner "./redaxo/pics" für alte Module benötigt!)

16. den alten files-Ordner (und andere benötigte Dateien wie externe scrips, favicon, etc.) auf dem webserver per FTP ins Subdomain-Verzeichnis ziehen (ab jetzt ist die alte Seite hin, also vorher ein Baustellenschild aufstellen!)

17. files-Unterordner ("addons") und _readme.txt per FTP "nachladen".

18. Neue Version auf Subdomain installieren (nicht einfach in einem Unterordner, das gibt nur Probleme!) Vorher natürlich Ordnerrechte vergeben und $REX['SETUP'] in der master.inc.php auf true setzen

19. Globale PHP-Version bei 1und1 umstellen

20. Textile Addon wieder hochladen und installieren

21. Developer-Addon deinstallieren/löschen (aus Sicherheitsgründen)

22. User neu anlegen

23. Hübschmachen (.htacces, rewrite-Geschichten, Umleitungen bei Error 400 etc., robots.txt)

24. wwww-Adresse im 1und1-Admin auf den neuen Unterordner konnektieren.

25. im alten root eine Weiterleitung auf die Subdomain anlegen, um die Übergangszeit zu überbrücken. Wenn 1und1 neu konnektiert hat, können die Umleitung und die Sudomain wieder weg.

FERTIG !

Es gibt sicher noch Kleinigkeiten, die zusätzlich angepasst werden müssen .....

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 11:22

ich würde einfach die Warnungen unterdrücken. Das sollte aber bei jedem Livesystem der Fall sein.
... das wäre ja wie eine blinkende Öl-Lampe beim Auto abzukleben!
Hierbei sollte man schon wissen, welche Warnungen wichtig sind und welche einfach ignoriert werden können.

Besser wäre, sich hier die Mühe des Updates von 4.x auf 4.4.1 zu machen. Lässt sich relativ leicht mit einigen Datenbank-Operationen bewerkstelligen (also 4.4.1 neu installieren und alte DB-Einträge importieren). Es sollten natürlich aktuelle Addons verwendet werden, und eigene (oder alte) Module sollten auf veraltete Sachen (z.B. <? statt <?php oder slit statt explode) untersucht werden.

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 11:43

frood hat geschrieben:
ich würde einfach die Warnungen unterdrücken. Das sollte aber bei jedem Livesystem der Fall sein.
... das wäre ja wie eine blinkende Öl-Lampe beim Auto abzukleben!
Fehlerausgaben gehören nicht in ein Livesystem. Punkt! =)
Am besten leitet man die Fehlermeldungen in eine Log-Datei um, so dass man bei Bedarf darauf zugreifen kann.
frood hat geschrieben:
ich würde einfach die Warnungen unterdrücken. Das sollte aber bei jedem Livesystem der Fall sein.
Hierbei sollte man schon wissen, welche Warnungen wichtig sind und welche einfach ignoriert werden können.
Alle Warnungen sind prinzipiell nur Warnungen. Sie deuten zwar auf unsauberen bzw. veralteten Code hin, verursachen aber an sich erstmal keine Probleme.
Dein Vergleich mit der Öllampe hinkt. Warnungen sind eher die Kratzer außen am Auto.
frood hat geschrieben:Besser wäre, sich hier die Mühe des Updates von 4.x auf 4.4.1 zu machen. Lässt sich relativ leicht mit einigen Datenbank-Operationen bewerkstelligen (also 4.4.1 neu installieren und alte DB-Einträge importieren).
Das ist leider nicht so einfach. Bei komplexen Projekten mit eigenen Addons kommen da leicht Tage zusammen, die man benötigt, um alle Warnmeldungen zu entfernen. Glaub mir, ich sprech da aus Erfahrung. =)
LG,
Xong

[ externes Bild ] Määääääääääääääääääääääääh!

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 12:13

Das sollte aber bei jedem Livesystem der Fall sein.
... natürlich aus im Live-System, aber es klang so, als wären damit alle Probleme erledigt.
... verursachen aber an sich erstmal keine Probleme.
... genau ;) Also einfach weiterfahren, wenn das Profil runter ist ... geht ja erstmal noch ... bis der Reifen platzt!
Warnungen sind eher die Kratzer außen am Auto.
Einigen wir uns auf runtergefahrene Reifen ;)
. Bei komplexen Projekten mit eigenen Addons kommen da leicht Tage zusammen
Es geht ja nicht darum, alle Warnungen zu entfernen, sondern eine website php 5.4-tauglich zu machen.
Und ich denke, wer eigene Addons schreiben kann, der hat auch mit keine Probleme mit einem Update (cmsbauer schätze ich eher als "Standard-Redaxo-Nutzer" ein, sonst würde er sicher hier nicht fragen ... oder, cmsbauer?)

Benutzeravatar
Xong
Beiträge: 2081
Registriert: 5. Jun 2008, 08:30
Wohnort: Halle (Saale)

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 12:36

frood hat geschrieben:
... verursachen aber an sich erstmal keine Probleme.
... genau ;) Also einfach weiterfahren, wenn das Profil runter ist ... geht ja erstmal noch ... bis der Reifen platzt!
Ich versteh schon, was du meinst. Bin mit dir sogar einer Meinung.

Aber dennoch: Wenn man die Warnungen einfach unterdrückt, dann hat das außer einem unguten Gefühl für den Programmierer keine weiteren Nachwirkungen. Alles andere musst du mir erstmal beweisen. :P
LG,
Xong

[ externes Bild ] Määääääääääääääääääääääääh!

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 12:58

Schon gut ... ich mach das bei einigen "schlanken" 4.x-Installationen ja auch so :oops:
Bei 3.2 langt das natürlich nicht ... ( und lass doch mal das arme Schaf in Ruhe! :mrgreen: )

cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 14:42

Vielen Dank schon mal für alle bisherigen Antworten. Es handelt sich bei den Websites teilweise um welche mit eigen programmierten Addons und Modulen. Theoretisch würde ich den Kunden immer ein Update vorschlagen, aber der Aufwand ist enorm schwer abschätzbar.

Beispiel: Ein Kunde bekam vor längerer Zeit ein Update auf 4.2 und plötzlich ging der TinyMCE-Editor nicht mehr fehlerfrei im IE 9. Da war das ganze Update aus Kundensicht besch...., da helfen dann Hinweise auf Firefox als Alternative oft nicht mehr viel. Kunde sieht dann nur: vorher ging's, jetzt nicht mehr. Aus diesem Grund bin ich oft der Meinung "never change a running system".

Ich bin daher am Überlegen, bei welchen Redaxo-Versionen ein Update unbedingt erforderlich ist und bei welchen die Warnhinweise bedenkenlos deaktiviert werden können?
MfG
cmsbauer

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 15:04

Kannst du das nicht local, z.B. auf xammp, mit PHP 5.4. testen?

cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

13. Mär 2013, 15:32

Theoretisch ja, aber das ein paar Sachen nicht mehr so ganz laufen werden weiß ich bereits. Wenn ich die Fehler dann alle behebe, wäre das praktisch der Auftrag, muss aber Preis vorher nennen.
MfG
cmsbauer

cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

19. Mär 2013, 18:13

Die meisten unserer Kunden wollen aus Kostengründen nur die Meldungen ausblenden und kein komplettes Redaxo-Update durchführen lassen. Sollten einzelne Module nicht mehr funktionieren, sollen nur diese angepasst werden. Im Prinzip funktioniert dies ja auch, wie zukunftsicher das ist, steht auf einem anderen Blatt. Ein Kunde, der momentan noch Redaxo 3.1 verwendet, möchte allerdings ein Update haben, allerdings nur wenn dann die Funktionalität gesichert ist. Müssen in der Version 4.4 denn auch noch Meldungen ausgeblendet werden? Falls ja, macht ein Update dann aktuell überhaupt Sinn?

Ich habe bei einer anderen Website mit Redaxo 3 nämlich die Fehlermeldungen testweise ausgeblendet und die Seite lief auch mit PHP 5.4 fehlerfrei.
MfG
cmsbauer

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

20. Mär 2013, 01:00

Ich habe bei einer anderen Website mit Redaxo 3 nämlich die Fehlermeldungen testweise ausgeblendet und die Seite lief auch mit PHP 5.4 fehlerfrei.
Wo ist dann das problem? Wie gesagt: wenn du nicht sicher bist, dann probier es einfach local aus.
Müssen in der Version 4.4 denn auch noch Meldungen ausgeblendet werden?
Wie xong schon sagte, im live-System sowieso. Ansonsten sollte man sich meiner Meinung nach als Entwickeler schon die Mühe machen, Fehlermeldungen zu analysieren, zumindest die wichtigen ( http://lmgtfy.com/?q=php+error+reporting )
Falls ja, macht ein Update dann aktuell überhaupt Sinn?
Auf jeden Fall! Allein schon, um neue, wichtige Addons nutzen zu können. Zukunftssicherheit rechtzeitig erhalten!

cmsbauer
Beiträge: 60
Registriert: 21. Jul 2006, 15:30

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

20. Mär 2013, 14:15

Welche Version ist stabiler? Redaxo 4.4 oder 4.5? Auf welche Version soll ich von 3 "zwischenupdaten"? 4.2?
MfG
cmsbauer

frood
Beiträge: 226
Registriert: 7. Okt 2008, 15:17

Re: Update von 3.x, 4.1, 4.2 auf 4.? bei PHP 5.4?

20. Mär 2013, 14:21

4.5 ist noch beta .... soll allerdings recht stabil sein: http://www.redaxo.org/de/forum/neuigkei ... 18916.html (Forum durchsuchen hilft ;) )

Edit: 4.5 ist inzwischen natürlich nicht mehr beta ....

Zurück zu „Allgemeines [R4]“