Update phpwcms
Posted: Mon 22. Sep 2008, 13:23
(Stand 06.02.09)
Download: - Neueste Version
Docu: - Installation & Update
Änderungsliste: - Laufende Neuerungen/Anderungen
Bei nicht erfahrene Anwender empfiehlt sich eine parallele Installation. (Hat auch den Vorteil, dass du ganz in Ruhe z.B. ein neues Design aufbauen oder Änderungen/Neuerungen einpflegen kannst ohne in Stress zu geraten, da die alte Seite unberührt bleibt).
01. Die aktuelle Version in ein Unterverzeichnis schieben.
02. Die vorhandene DB sichern und in eine zweite DB bringen, also kopieren. (phpMyAdmin -> http://de.wikipedia.org/wiki/PhpMyAdmin).
- Vor dem Exportieren sollten vielleicht die Inhalte folgender Tabellen geleert werden um die DB Größe zu reduzieren:
1. phpwcms_bad_behavior leeren
2. phpwcms_cache leeren
3. phpwcms_formtracking leeren wenn vorhanden
(Links die Tabelle phpwcms_bad_behavior auswählen -> Oben Ansicht auswählen -> unten alle auswählen -> ausgewählte löschen. (Je nach Anzahl der Darstellungsseiten mehrfach ausführen (Das Gleiche für phpwcms_cache, phpwcms_formtracking).
4. Tabellen auf Fehler prüfen und wenn notwendig optimieren/reparieren.
- Die neueren phpMyAdmin exportieren grundsätzlich im UTF-8 Format.
- Die neue DB wird angelegt, mit der entsprechenden collation für die MySQL Verbindung zu phpMyAdmin.
(Bei älteren DB ist das zu 99% swedish_latin1_ci)
- In die neue DB wird nun die exportierte mit der default Zeichencodierung UTF-8 importiert.
Solltest du ein ISO Charset verwenden, kann es notwendig sein, vor dem Import das SQL-File nach ISO zu konvertieren. Das geht ganz gut mit dem unten angesprochenen Editor.
-> SQL-Textfile in den Editor laden, unter "Format" ISO8859-2 auswählen und mit einem neuen Namen abspeichern. Die Datei liegt nun ISO kodiert vor.
(Aber bitte vorher einen einfachen Export/Import mit identischen Einstellungen (Zeichencodierung) probieren!!!).
03. Die vorhandene conf.inc.php in die neue Installation kopieren und mit der dort vorhandenen dist.conf.inc.php abgleichen.
Hier wird natürlich auch die neue DB eingetragen mit der collation und dem charset und das Unterverzeichnis in dem das neue System gerade läuft.
-> Besser wäre es wenn du speziell dazu eine Subdomain einrichten würdest anstatt die Installation mit einem Unterverzeichnisnamen anzusprechen.
04. Datei- und Verzeichnisrechte wie in der Docu angegeben setzen.
05. Setup aufrufen -> Update
- Je nach Versionsstand, die ersten Punkte beachten und ausführen.
- DB Updates nacheinander laufen lassen und auf Fehler achten: (Immer das gesamte Ausgabefeld bis nach unten rollen!!!)
> (Hierbei ist natürlich der Einstiegspunkt zu beachten, ist das z.B. die Version 1.2.8 beginnt das Update mit "15__1.2.7-DEV_to_1.2.9.sql" !!!)
-----------------------------------------------------
- 13__1.2.5-DEV_to_1.2.6-DEV.sql (Ab V1.2.5)
- 14__1.2.6-DEV_to_1.2.7-DEV.sql
- 15__1.2.7-DEV_to_1.2.9.sql
- 16__1.2.9-DEV_to_1.3.0.sql
- 17__1.3.0_to_1.3.2.sql
- 18__1.3.2_to_1.3.3.sql
- 19__1.3.3_to_1.3.4.sql (Ab V1.3.3)
- 19__1.3.4_to_1.3.5.sql
- 20__1.3.5_to_1.3.5.1.sql
- 21__1.3.5_to_1.5.sql
- 22__1.4_to_1.5.sql (Ab V1.4.x)
-----------------------------------------------------
-> Beim letzten Update wird es wahrscheinlich zu Fehlern kommen:
- Fehler: Die Tabelle phpwcms_categories existiert nicht -> ignorieren, da ein Shopupdate, doch der Shop existiert bei dir noch nicht
- Fehler: Die Tabelle phpwcms_log existiert schon -> ignorieren, da diese Tabelle in der neuen Form noch nicht verwendet wird
05.1 Doppelte Indizes in einigen DB-Tabellen
- Es kann passieren, das in den Tabellen doppelte Indexe vorhanden sind.
-> phpMyAdmin aufrufen
-> DB auswählen
-> Tabelle auswählen
-> nach unten rollen zu den Indexen (Dort kannst du alle Indexe löschen die ein "_1 _2 _3 usw." am Ende haben.
(phpMyAdmin sollte dich beim Aufruf der Tabelle auch darauf hinweisen, dass doppelte Indexe vorhanden sind)
!!!Alle Tabellen durchsehen!!!
06. Wenn der Shop nicht gebraucht wird dann lösche bitte den komplette Pfad /include/inc_module/mod_shop/
07. Den Inhalt des Ordners /filearchive/ (phpwcms_filestorage) der alten Version in den Ordner /filearchive/ der neuen Version kopieren (Das gleiche mit Daten unter /picture/* wenn verwendet)
- Geänderte Verzeichnisnamen
ALT . . . . . . . . . . . . . . . . . NEU . . . . .
phpwcms_filestorage -> . . . . filearchive
phpwcms_ftp -> . . . . . . . . . upload
phpwcms_template -> . . . . . template
08. Die vorhandene Datei /config/phpwcms/conf.template_default.inc.php der alten Version mit der neuen abgleichen
09. Wenn du Home anders bezeichnet hast, dann bitte auch die Datei /config/phpwcms/conf.indexpage.inc.php abgleichen
10. Die vorhandenen veränderten CSS-Datei unter /template/inc_css/ aus der alten Version abgleichen mit den entsprechenden neuen css-Dateien
11. Die vorhandenen veränderten Template Dateien /template/inc_cntpart/* aus der alten Version abgleichen mit den entsprechenden neuen Dateien
(Wenn ich von abgleichen spreche, meine ich immer dass die neuen Dateien mit Einträgen aus den alten ergänzt werden)
12. Browsercache löschen -> Backendlogin aufrufen, nicht die Seite aufrufen!!!! (Denn wenn du Google- oder Trackerzeugs installiert hast sollte das vor dem ersten Seitenaufruf in dieser Entwicklungsinstallation deaktiviert sein (Wird später wieder nach Fertigstellung der Seite aktiviert)).
13. In der vorhandenen Vorlage den Trackingcode deaktivieren!!!!
14. Wenn das Backend funktioniert, dann bitte das Verzeichnis /setup/* löschen oder in eine sinnlose Zeichenfolge umbenennen.
15. Das System sollte nun laufen. Beim Neuaufbau der Bilder kann es zu einem Quasistillstand des Systems kommen, nicht erschrecken. (Mehrfach nacheinander die Dateizentrale aufrufen, wenn die z.B. eine timeout Meldung kommt).
(Du kannst natürlich auch den Inhalt des Ordner /content/images/* aus dem alten System kopieren, ist im Normalfall aber nicht notwendig, da das System den Index der Thumbs/verkleinerten Bilder/Dateien neue aufbaut).
---------------
Es sind natürlich noch einige Anpassungen zu bewerkstelligen wie z.B. die <META ...> Tags XHTM fest zu machen:
<meta .... /> usw. Ist aber Kleinkram und hat mit dem Update grundsätzlich nichts zu tun.
Die Vorgehensweise nach diesem Schema hat den Vorteil, das die alte Seite unberührt bleibt und du mit dem neuen System z.B. das Layout oder andere Neuerungen in aller Ruhe entwickeln kannst.
Nach Beendigung der Arbeiten kann das alte System gelöscht werden und die neue Version wird an diese Stelle geschoben bzw. die Domain darauf verbogen.
Wichtig: Der Updatestress wird zum Großteil durch einen unbedachten Umgang mit den css und Templatedateien verursacht.
Grundsatz 1: Immer eigene Namen für CSS- und Templatedateien verwenden die in Gebrauch sind, so werden diese von einem Update nicht berührt.
Grundsatz 2: Wenn möglich sollten für das Basissystem, das Layout und die Navi separate CSS Dateien verwendet werden.
z.B. frontend01.css, layout01.css, navi01.css
----------------
Zum Abgleich bzw. für das Editieren aller Dateien kann z.B. der Editor pspad und dessen FTP-Modus. (Direkter Zugriff aus dem Editor heraus) verwendet werden.
Dieser Editor ist zusammen mit dem TotalCommander (kostenfrei für nichtgewerbliche Seiten) wirklich brauchbar.
Alternativ zum TotalCommander kann auch z.B. http://www.filezilla.de/ verwendet werden. (Ist im FTP Bereich klar überlegen).
-----
Anregung: Ein DIFF. erstellen mit dem TotalCommander
Knut
Download: - Neueste Version
Docu: - Installation & Update
Änderungsliste: - Laufende Neuerungen/Anderungen
Bei nicht erfahrene Anwender empfiehlt sich eine parallele Installation. (Hat auch den Vorteil, dass du ganz in Ruhe z.B. ein neues Design aufbauen oder Änderungen/Neuerungen einpflegen kannst ohne in Stress zu geraten, da die alte Seite unberührt bleibt).
01. Die aktuelle Version in ein Unterverzeichnis schieben.
02. Die vorhandene DB sichern und in eine zweite DB bringen, also kopieren. (phpMyAdmin -> http://de.wikipedia.org/wiki/PhpMyAdmin).
- Vor dem Exportieren sollten vielleicht die Inhalte folgender Tabellen geleert werden um die DB Größe zu reduzieren:
1. phpwcms_bad_behavior leeren
2. phpwcms_cache leeren
3. phpwcms_formtracking leeren wenn vorhanden
(Links die Tabelle phpwcms_bad_behavior auswählen -> Oben Ansicht auswählen -> unten alle auswählen -> ausgewählte löschen. (Je nach Anzahl der Darstellungsseiten mehrfach ausführen (Das Gleiche für phpwcms_cache, phpwcms_formtracking).
4. Tabellen auf Fehler prüfen und wenn notwendig optimieren/reparieren.
- Die neueren phpMyAdmin exportieren grundsätzlich im UTF-8 Format.
- Die neue DB wird angelegt, mit der entsprechenden collation für die MySQL Verbindung zu phpMyAdmin.
(Bei älteren DB ist das zu 99% swedish_latin1_ci)
- In die neue DB wird nun die exportierte mit der default Zeichencodierung UTF-8 importiert.
Solltest du ein ISO Charset verwenden, kann es notwendig sein, vor dem Import das SQL-File nach ISO zu konvertieren. Das geht ganz gut mit dem unten angesprochenen Editor.
-> SQL-Textfile in den Editor laden, unter "Format" ISO8859-2 auswählen und mit einem neuen Namen abspeichern. Die Datei liegt nun ISO kodiert vor.
(Aber bitte vorher einen einfachen Export/Import mit identischen Einstellungen (Zeichencodierung) probieren!!!).
03. Die vorhandene conf.inc.php in die neue Installation kopieren und mit der dort vorhandenen dist.conf.inc.php abgleichen.
Hier wird natürlich auch die neue DB eingetragen mit der collation und dem charset und das Unterverzeichnis in dem das neue System gerade läuft.
-> Besser wäre es wenn du speziell dazu eine Subdomain einrichten würdest anstatt die Installation mit einem Unterverzeichnisnamen anzusprechen.
04. Datei- und Verzeichnisrechte wie in der Docu angegeben setzen.
05. Setup aufrufen -> Update
- Je nach Versionsstand, die ersten Punkte beachten und ausführen.
- DB Updates nacheinander laufen lassen und auf Fehler achten: (Immer das gesamte Ausgabefeld bis nach unten rollen!!!)
> (Hierbei ist natürlich der Einstiegspunkt zu beachten, ist das z.B. die Version 1.2.8 beginnt das Update mit "15__1.2.7-DEV_to_1.2.9.sql" !!!)
-----------------------------------------------------
- 13__1.2.5-DEV_to_1.2.6-DEV.sql (Ab V1.2.5)
- 14__1.2.6-DEV_to_1.2.7-DEV.sql
- 15__1.2.7-DEV_to_1.2.9.sql
- 16__1.2.9-DEV_to_1.3.0.sql
- 17__1.3.0_to_1.3.2.sql
- 18__1.3.2_to_1.3.3.sql
- 19__1.3.3_to_1.3.4.sql (Ab V1.3.3)
- 19__1.3.4_to_1.3.5.sql
- 20__1.3.5_to_1.3.5.1.sql
- 21__1.3.5_to_1.5.sql
- 22__1.4_to_1.5.sql (Ab V1.4.x)
-----------------------------------------------------
-> Beim letzten Update wird es wahrscheinlich zu Fehlern kommen:
- Fehler: Die Tabelle phpwcms_categories existiert nicht -> ignorieren, da ein Shopupdate, doch der Shop existiert bei dir noch nicht
- Fehler: Die Tabelle phpwcms_log existiert schon -> ignorieren, da diese Tabelle in der neuen Form noch nicht verwendet wird
05.1 Doppelte Indizes in einigen DB-Tabellen
- Es kann passieren, das in den Tabellen doppelte Indexe vorhanden sind.
-> phpMyAdmin aufrufen
-> DB auswählen
-> Tabelle auswählen
-> nach unten rollen zu den Indexen (Dort kannst du alle Indexe löschen die ein "_1 _2 _3 usw." am Ende haben.
(phpMyAdmin sollte dich beim Aufruf der Tabelle auch darauf hinweisen, dass doppelte Indexe vorhanden sind)
!!!Alle Tabellen durchsehen!!!
06. Wenn der Shop nicht gebraucht wird dann lösche bitte den komplette Pfad /include/inc_module/mod_shop/
07. Den Inhalt des Ordners /filearchive/ (phpwcms_filestorage) der alten Version in den Ordner /filearchive/ der neuen Version kopieren (Das gleiche mit Daten unter /picture/* wenn verwendet)
- Geänderte Verzeichnisnamen
ALT . . . . . . . . . . . . . . . . . NEU . . . . .
phpwcms_filestorage -> . . . . filearchive
phpwcms_ftp -> . . . . . . . . . upload
phpwcms_template -> . . . . . template
08. Die vorhandene Datei /config/phpwcms/conf.template_default.inc.php der alten Version mit der neuen abgleichen
09. Wenn du Home anders bezeichnet hast, dann bitte auch die Datei /config/phpwcms/conf.indexpage.inc.php abgleichen
10. Die vorhandenen veränderten CSS-Datei unter /template/inc_css/ aus der alten Version abgleichen mit den entsprechenden neuen css-Dateien
11. Die vorhandenen veränderten Template Dateien /template/inc_cntpart/* aus der alten Version abgleichen mit den entsprechenden neuen Dateien
(Wenn ich von abgleichen spreche, meine ich immer dass die neuen Dateien mit Einträgen aus den alten ergänzt werden)
12. Browsercache löschen -> Backendlogin aufrufen, nicht die Seite aufrufen!!!! (Denn wenn du Google- oder Trackerzeugs installiert hast sollte das vor dem ersten Seitenaufruf in dieser Entwicklungsinstallation deaktiviert sein (Wird später wieder nach Fertigstellung der Seite aktiviert)).
13. In der vorhandenen Vorlage den Trackingcode deaktivieren!!!!
14. Wenn das Backend funktioniert, dann bitte das Verzeichnis /setup/* löschen oder in eine sinnlose Zeichenfolge umbenennen.
15. Das System sollte nun laufen. Beim Neuaufbau der Bilder kann es zu einem Quasistillstand des Systems kommen, nicht erschrecken. (Mehrfach nacheinander die Dateizentrale aufrufen, wenn die z.B. eine timeout Meldung kommt).
(Du kannst natürlich auch den Inhalt des Ordner /content/images/* aus dem alten System kopieren, ist im Normalfall aber nicht notwendig, da das System den Index der Thumbs/verkleinerten Bilder/Dateien neue aufbaut).
---------------
Es sind natürlich noch einige Anpassungen zu bewerkstelligen wie z.B. die <META ...> Tags XHTM fest zu machen:
<meta .... /> usw. Ist aber Kleinkram und hat mit dem Update grundsätzlich nichts zu tun.
Die Vorgehensweise nach diesem Schema hat den Vorteil, das die alte Seite unberührt bleibt und du mit dem neuen System z.B. das Layout oder andere Neuerungen in aller Ruhe entwickeln kannst.
Nach Beendigung der Arbeiten kann das alte System gelöscht werden und die neue Version wird an diese Stelle geschoben bzw. die Domain darauf verbogen.
Wichtig: Der Updatestress wird zum Großteil durch einen unbedachten Umgang mit den css und Templatedateien verursacht.
Grundsatz 1: Immer eigene Namen für CSS- und Templatedateien verwenden die in Gebrauch sind, so werden diese von einem Update nicht berührt.
Grundsatz 2: Wenn möglich sollten für das Basissystem, das Layout und die Navi separate CSS Dateien verwendet werden.
z.B. frontend01.css, layout01.css, navi01.css
----------------
Zum Abgleich bzw. für das Editieren aller Dateien kann z.B. der Editor pspad und dessen FTP-Modus. (Direkter Zugriff aus dem Editor heraus) verwendet werden.
Dieser Editor ist zusammen mit dem TotalCommander (kostenfrei für nichtgewerbliche Seiten) wirklich brauchbar.
Alternativ zum TotalCommander kann auch z.B. http://www.filezilla.de/ verwendet werden. (Ist im FTP Bereich klar überlegen).
-----
Anregung: Ein DIFF. erstellen mit dem TotalCommander
Knut