Serverumzug
modified eCommerce Shopsoftware Serverumzug
Folgende Leistungen sollte der neue Webhoster bieten:
ausreichend Speicher (Ermittlung Speicher s.u.)
- PHP ab 5.6.x bis PHP 7.4.x
- cURL library
- MySQL ab 5.0.0 oder höher
- GDlib mit gif Support
- Funktion fsockopen()
- Für PayPal PLUS Zahlungen muss der Server zwingend TLS v1.2 unterstützen und für Webhooks muss ein SSL-Zertifikat vorhanden sein!
sowie Den Apache-Mod "rewrite" (im allg. Standard) falls die Konfiguration "Suchmaschinenfreundliche URLs" genutzt wird.
1.0 Ermittlung benötigter Features[Bearbeiten]
Da Speicher ein kostengünstiges Gut ist, kommt man in den allermeisten Fällen mit dem standardmäßig zur Verfügung gestellten Speicher problemlos aus. Ein kurze Überprüfung vor Vertragsabschluss ich trotzdem nicht von Nachteil.
Es gibt zwei Arten Speicher welcher benötigt wird. - Web-Speicher (Webspace) - Datenbankspeicher
Webspace: Um zu ermitteln wie viel Speicher ein bestehender Shop zur Zeit benötigt gibt es viele Möglichkeiten. Ein simple Möglichkeit ist. Man kopiert seinen bestehenden Shop via FTP auf seinen lokalen Rechner und lässt sich anzeigen wie viel Speicher die Kopie auf der lokalen Festplatte vereinnahmt. Abhängig ob man noch viele zusätzliche Produkte in der Zukunft plant setzt man den Faktor 1,5 als Minimalspeicher den der neue Hostingvertrag bieten sollte.
Datenbankspeicher: Wieviel Datenbankspeicher man benötigt ermittelt man leicht mit phpMyAdmin. Auch hier kann man einen großzügigen Sicherheitsfaktor nach oben einplanen.
SSL/HTTPS: Soll auf dem neuen Server verschlüsselte Datenübertragung (Bestellungen, Kreditkartendaten, ..) genutzt werden? Stellt der neue Provider Übertragung via HTTPS zur Verfügung? Es gibt zwei Möglichkeiten.
a. eigenes SSL-Zertifikat Ist der Provider bereit das eigene (mitgebrachte) Zertifikat zu installieren? Oder erwartet er, dass ein neues Zertifikat über ihn erworben wird? b. SSL-Proxy Viele Provider stellen Ihren Kunden einen SSL-Proxy zur Verfügung. Der verschlüsselte Aufruf der Websites erfolgt dann über eine Adresse des Providers. Z.B. https://ssl.meinprovider.de/meinedomain/
2.0 Welche Informationen müssen vorliegen[Bearbeiten]
Es müssen Konfigurationen vorgenommen werden. Bevor man die Arbeit beginnt schreibt man sich am besten die benötigten Konfigurationsdaten heraus. Alle folgenden Daten erfährt man vom neuen Provider.
2.1 Webadresse (Domainname)
Unter welcher Web-Adresse ist der umgezogene Shop erreichbar?
Für den Fall, dass die Domain noch nicht umgeschaltet ist, stellt der Provider in der Regel eine Ersatzadresse bereit (z.B. "http://web4532.xy-hostingservice.de/"). Diese kann genutzt werden für den abschließenden Test. Allerdings muss nach Abschluß der Konfigurationsarbeiten die Konfigurationsdateien (siehe 5.0) nachbearbeitet werden.
2.2 SSL Adresse (HTTPS, verschlüsselte Übertragung)
Falls der Shop SSL nutzt. Unter welcher Adresse ist der Shop via HTTPS erreichbar (siehe 1.0)?
2.3 FTP Zugangsdaten
- Host? - ID/Name? - Passwort?
2.4 Datenbank
- Datenbank Host? - Datenbank Name? - ID/Username? - Passwort?
2.5 Serverpfad
Standardmäßig erhält man die Information nicht vom Provider da sie im allgemeinen nicht benötigt wird. Aber im besonderen. Z.B. jetzt. Diese Information zu bekommen ist etwas aufwändig. Man kann sie selbst ermitteln indem man folgendes ausführt.
Man schreibe ein Dreizeiler-Programm:
<?php
phpinfo();
?>
Dieses speichere man auf seinem neuen Webspache (FTP hochladen) unter dem Namen "phpinfo.php" und rufe es auf. Z.B. http://www.adresse_neuer_webspace.de/phpinfo.php Es erscheint eine lange Liste mit Serverdaten darin sucht man sich die Information "DOCUMENT_ROOT" und notiere sich den Wert sorgfältig. Diese könnte lauten z.B. "/home/kunden/web4532/htdocs".
Nach erfolgreicher Installation ist dieses Programm aus Sicherheitsgründen zu löschen.
3.0 Dateien kopieren[Bearbeiten]
Man ziehe via FTP eine Kopie aller Dateien auf seinen lokalen Rechner und lade sie anschließend auf den Server des neuen Providers hoch.
Die Inhalte folgender Ordner sollten vorher gelöscht werden. Auf dem neuen Server sind die Ordner aber zu kopieren oder neu anzulegen.
templates_c/ cache/
4.0 Datenbank kopieren[Bearbeiten]
Man erstelle ein Datenbankbackup, am besten ein SQL-Dump. Das kann erfolgen mit dem Tool phpMyAdmin. Bei großen Datenbeständen kann phpMyAdmin versagen. Hier ist das Tool MyOOS [Dumper] nützlich.
Anschließend sind die Daten auf dem Datenbankserver des neuen Providers einzuspielen. Vorher muß ggf. das verwendete Backupprogramm installiert werden. phpMyAdmin wird von vielen Providern von Hause aus zur Verfügung gestellt, die eigene Installation ist in diesem Fall nicht erforderlich.
5.0 Konfiguration[Bearbeiten]
In den modified eCommerce Shopsoftware-Konfigurationsdateien sind nun die neuen Daten einzutragen. Man hat ja noch die Kopie der Dateien auf seinem lokalen Rechner, editiert sie und lädt sie erneut hoch. Vorher Sicherungskopien der Originaldateien anlegen.
5.1 configure.php
/includes/configure.php /admin/includes/configure.php (Eine Änderung dieser Datei ist ab Shopversion 2.0.0.0 nicht mehr erforderlich!)
Diese Dateien sind fast identisch. Folgende Zeilen sind zu überarbeiten:
Adresse aus 2.1:
define('HTTP_SERVER', 'http://www.meine_domain.de');
Adresse aus 2.2:
define('HTTPS_SERVER', 'https://ssl.soundso.de/meinwebspace');
Verschlüsselte Übertragung(true=ja, false=nein):
define('ENABLE_SSL', true);
Serverpfad aus 2.5, auf abschließendes Slash ("/") achten:
define('DIR_FS_DOCUMENT_ROOT', '/home/kunden/web4532/htdocs/'); define('DIR_FS_CATALOG', '/home/kunden/web4532/htdocs/');
Serverdaten aus 2.4:
define('DB_SERVER', 'db_xy.de'); define('DB_SERVER_USERNAME', 'web4523'); define('DB_SERVER_PASSWORD', 'Ftr44rt'); define('DB_DATABASE', 'db4523');
5.2 Dateirechte[Bearbeiten]
Die folgenden Ordner und Dateien sollten Schreibrechte besitzen.
Ordner Rechte Funktion /admin/backups 777 Datenbank Backups /admin/images/graphs 777 Statistik Graphen /admin/images/icons 777 Kundengruppen Icons /admin/rss 777 Dateien aus Admin Info * Nicht mehr ab 1.06 vorhanden /cache 777 Cache Dateien von Smarty /export 777 Export-Verzeichnis /images 777 Bilderverzeichnis /images/banner 777 Bilder für Banner /images/categories 777 Kategorie-Bilder /images/content 777 Bilder aus WYSIWYG Editor /images/icons 777 Kundengruppen Icons /images/manufacturers 777 Hersteller-Bilder /images/product_images/info_images 777 Info-Bilder /images/product_images/midi_images 777 Midi-Bilder /images/product_images/mini_images 777 Mini-Bilder /images/product_images/original_images 777 Original-Bilder /images/product_images/popup_images 777 Popup-Bilder /images/product_images/thumbnail_images 777 Thumbnail-Bilder /images/tags 777 Bilder für Artikeleigenschaften /import 777 Import-Verzeichnis /includes/external/magnalister 777 Magnalister-Verzeichnis /log 777 Log-Verzeichnis /media/content 777 Dateien für ContentManager /media/content/backup 777 Backup-Dateien für ContentManager /media/products 777 Dateien für ProduktManager /media/products/backup 777 Backup-Dateien für ProduktManager /templates/tpl_modified 777 Template-Verzeichnis /templates/xtc5 777 Template-Verzeichnis /templates_c 777 Smarty-Verzeichnis Datei Rechte Funktion /sitemap.xml 777 Datei für die Sitemap-Informationen /includes/configure.php 777 Konfigurationsdatei Shop /admin/magnalister.php 777 Magnalister-Datei /magnaCallback.php 777 Magnalister-Datei
Diese kann man mit dem FTP-Programm setzen.