eCommerce Suite Installation verschieben

Anleitung fürs Verschieben einer eCommerce Suite Installation.

Einleitung

In dem Artikel ist im kurzen beschrieben, wie Sie eine Installation im ganzen der eCommerce Suite verschieben können. Dies könnte der Fall sein, wenn Sie mit Ihrem Shop auf einen anderen Server umziehen oder eine Kopie des Shops (z.B. als Entwicklungsumgebung) erstellen möchten.

Für das Verschieben oder Kopieren der Installation brauchen Sie die Datenbanken:

  • <db-prefix>_appecmsadmin
  • <db-prefix>_appecsadmin
  • <db-prefix>_shopfrontend

Wenn Sie die Möglichkeit haben, sollten Sie die Name der Datenbanken beibehalten, dies erspart Ihnen später einige Konfigurationsarbeiten. Wenn Sie eine Kopie mit dem gleichen Datenbank-Server erstellen, müssen Sie Datenbanknamem ändern. Am einfachsten ist es, wenn Sie nur das Prefix der Datenbank ändern.

Als nächstes müssen Sie das komplette Installationsverzeichnis mit allen Unterzeichnissen und Dateien kopieren. Bitte achten Sie darauf, dass der Webserver-User (bzw. der PHP-User, falls nicht identisch mit dem Webserver-User) Schreibzugriff auf das gesamte Installationsverzeichnis hat.

  • eCS-INSTALL-DIR/
    • core/
    • site_inc/
    • tmp/
    • www/
    • loader-license.key

Nach dem Kopieren Ihrer Installation müssen Sie nun die Konfigurationen anpassen.

 

Konfigurationsdateien

Als erstes sollten Sie die Datei mit den Installation-Defines anpassen:

  • eCS-INSTALL-DIR/
    • core/
      • configfiles/
        • ecms_server.defines.inc.php
Define Beschreibung
eCMS_APP_CORE_DIR Absoluter Pfad auf "core" Verzeichnis der Installation. Der Pfad muss mit Slash "/" abgeschlossen werden.
eCMS_DB_HOST Datenbank Host-Adresse.
eCMS_DB_USER Datenbank Benutzer.
eCMS_DB_PASSWD Datenbank Passwort.
eCMS_USER_DB Datenbank Name der eCMS Backend User Verwaltung. Standardmäßig ist dies die eCMS-Admin-DB "<db-prefix>_appecmsadmin".
eCMS_PACKAGEMANAGER_SERVER Server-Adresse des Package-Managers.
eCMS_PACKAGEMANAGER_DIR Cache-Verzeichnis des Package-Managers. Üblicherweise liegt dieses innerhalb des "core" Verzeichnis unter "core/efds_cache/".
eCMS_EMAIL_SERVERADMIN E-Mail Adresse des Server-Administrators.
eCMS_ENV_TMP_DIR Das Cache/Tmp-Verzeichnis der Installation. Üblicherweise ist dies das "tmp" Verzeichnis im Installationsverzeichnis.
eCMS_ENV_PHP_BIN Aufruf des PHP-Binary auf der Konsole, z.B. "php" oder "/path/to/php".
eCMS_ENV_FOP_BIN Aufruf des PHP-Binary auf der Konsole, z.B. "fop" oder "/path/to/fop".
eCMS_IMGPROC_IMAGICK_DIR Pfad zu den ImageMagick-Binary "convert" und "mogrify".


Im dem Verzeichnis "core/configfiles" müssen die Daemon Site Loader Cachefiles löschen.

  • eCS-INSTALL-DIR/
    • core/
      • configfiles/
        • ecms_daemon_<site-db-name>_<site-label>.inc.php

          Daemon Loader Files löschen

 

Im nächsten Schritt müssen Sie die Site Loader Files anpassen

  • eCS-INSTALL-DIR/
    • www/
      • config/
        • ecms_site.inc.php
      • ecms-admin
        • config
          • ecms_site.inc.php
      • ecs-admin
        • config
          • ecms_site.inc.php
Variable Beschreibung
$ecms_dbname Der Datenbank-Name der Site. Wenn Sie den Datenbank-Name nicht geändert haben, müssen Sie diese Variable nicht anpassen. Andernfalls tragen Sie hier den neuen Datenbank-Namen ein. 
$ecms_site_label Das Label der Site. Diese Variable müssen nicht anpassen.
$ecms_app_core Absoluter Pfad auf "core" Verzeichnis der Installation. Der Pfad muss mit Slash "/" abgeschlossen werden.

 

Konfiguration in der Datenbank

In den Konfigurationsdateien sind nur die fürs Laden der Site erforderlichen Informationen hinterlegt. Alle weiterführenden Einstellungen sind in den Datenbank hinterlegt.

eCMS Admin "<db-prefix>_appecmsadmin"

In der Tabelle " ecms_site" müssen Sie die URLs und Verzeichnisse der eCMS Admin Site umstellen:

DB-Spalte Beschreibung
site_url_ssl Die HTTPS URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_url Die HTTP URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_dir_www Absoluter Pfad zum Verzeichnis mit den "www" Inhalten der Site.
site_dir_inc Absoluter Pfad zum Verzeichnis mit den "include" Inhalten der Site.
sess_dbname Datenbank-Tabelle der User-Session-Verwaltung. Wenn Sie die Datenbanken umbenannt haben, müssen Sie hier den Datenbank-Name anpassen.

 

Wenn Sie die Datenbank-Namen geändert haben, müssen Sie Namesänderung in der Tabelle " ecms_package2site" ebenfalls vornehmen. In dieser Tabelle ist hinterelegt, welches Plugin mit welcher Version in welcher Site installiert ist. Wenn Sie diese Daten nicht anpassen, kann das eCMS verfügbare Updates zu installierten Plugins mehr ermitteln oder ggf. Plugins nicht korrekt installieren, weil diese bereits installiert sind.

DB-Spalte Beschreibung
p2s_subconfig_label Site Loader Label aus "<db-name>:<site-label>". In der Spalte müssen die Datenbank-Namen angepasst werden. Wenn Sie bei den Datenbank-Namen nur den Prefix geändert haben, können Sie hier mit einem String-Replace alle Datenbank-Namen mit einer DB-Query ändern.

 

In der Tabelle " em_uam_application" sind zu den Backends (eCMS-Admin und Shop-Admin) die Site Loader Labels und die URL hinterlegt:

DB-Spalte Beschreibung
uamapp_label   Das Site Loader Label (<db-name>:<site-label>) zum Backend. Wenn Sie die Datenbank-Namen geändert haben, müssen Sie die Datenbank im Loader Label ändern.
uamapp_url Direket Login URLs zum Backend. In der Spalte sind erweiterte URLs für die Backends hinterlegt, über die ein User mit einem Login-Token direkt angemeldet werden kann. Sie sollten deshalb besser nur den vorderen Teil der URL ändern.

In der Tabelle " em_uam_user_appconfig" sind die Benutzer-Freigaben mit den Site Loader Labels gespeichert.

DB-Spalte Beschreibung
uamac_label Das Site Loader Label (<db-name>:<site-label>) auf die freigegebene Datenbank. Wenn Sie die Datenbank-Namen geändert haben, müssen Sie die Datenbank im Loader Label ändern.

 

eCS Admin "<db-prefix>_appecsadmin"

In der Tabelle " ecms_site" müssen Sie die URLs und Verzeichnisse der Shop Admin Site umstellen:

DB-Spalte Beschreibung
site_url_ssl Die HTTPS URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_url Die HTTP URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_dir_www Absoluter Pfad zum Verzeichnis mit den "www" Inhalten der Site.
site_dir_inc Absoluter Pfad zum Verzeichnis mit den "include" Inhalten der Site.
sess_dbname Datenbank-Tabelle der User-Session-Verwaltung. Wenn Sie die Datenbanken umbenannt haben, müssen Sie hier den Datenbank-Name anpassen.

 

Shop Fronted "<db-prefix>_shopfrontend"

In der Tabelle " ecms_site" müssen Sie die URLs und Verzeichnisse der Shop Frontend Site umstellen:

DB-Spalte Beschreibung
site_url_ssl Die HTTPS URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_url Die HTTP URL der Site. Wenn sich Ihre Domain nicht geändert hat, können Sie diese Einstellung unverändert lassen.
site_dir_www Absoluter Pfad zum Verzeichnis mit den "www" Inhalten der Site.
site_dir_inc Absoluter Pfad zum Verzeichnis mit den "include" Inhalten der Site.
sess_dbname Datenbank-Tabelle der User-Session-Verwaltung. Wenn Sie die Datenbanken umbenannt haben, müssen Sie hier den Datenbank-Name anpassen.
usr_grp_dbname Shop Benutzer Datenbank. Wenn Sie die Datenbanken umbenannt haben, müssen Sie hier den Datenbank-Name anpassen.

 

Die Einstellungen Shops sind in der Tabelle " eos_eshop" hinterlegt.

DB-Spalte Beschreibung
shop_ecms_db Die Site Datenbank zum Shop. Üblicherweise ist diese Datenbank mit der Shop-Datenbank "<db-prefix>_shopfrontend" identisch.
shop_url Die HTTP URL auf das Shop-Frontend.
shop_path Absoluter Pfad zum "www" Verzeichnis des Shop-Frontends.
prod_ecms_db Die Produkt Datenbank zum Shop. Üblicherweise ist diese Datenbank mit der Shop-Datenbank "<db-prefix>_shopfrontend" identisch.
doc_ecms_db Die Dokumenten Datenbank zum Shop. Üblicherweise ist diese Datenbank mit der Shop-Datenbank "<db-prefix>_shopfrontend" identisch.
doc_dir_path Das Speicherverzeichnis für die Shop-Dokumente (Rechnungen, Lieferscheine, etc.).

 

In der Tabelle " em_mprint_printer" sind die Cache-Verzeichnisse für Printer-Queues hinterlegt.

DB-Spalte Beschreibung
mprint_path Absoluter Pfad zum zum Cache-Verzeichnis des Printers.

 

Nachdem Sie diese Einstellungen geändert haben, können Sie über den eCMS-Admin auf die Shop-Frontend-Site zugreifen. Gehen Sie im eCMS-Admin zur Plugin Verwaltung ("Administration > Plugins") und suchen Sie nach dem Plugin "ecms_plugin_ecs". Rufen Sie die Plugin-Konfiguration auf und ändern Sie den Parameter "shopdb" auf den neuen Datenbank-Namen.

 

Weitere Schritte

Richten Sie für den eCMS Daemon einen Cronjob für die verschobene Installation ein:

  1. * * * * * php eCS-INSTALL-DIR/core/ecms_v3/cli/daemon.php

 

Fehlersuche

Sollten Sie nach der Umstellung eine Wartungsmeldung erhalten, ist vermutlich die Datenbank-Zugangsdaten noch nicht korrekt gesetzt. Prüfen Sie in diesen Falls die Logdatei " eCS-INSTALL-DIR/tmp/em_log_<JJJJMMDD>.log" für weitere Informationen.

Sollten Sie nach der Umstellung nur eine leer Seite erhalten, sind vermutlich noch Fehler in den Einstellungen (z.B. fehlerhafte Verzeichnispfade) vorhanden. Bitte prüfen Sie das PHP Errorlog für weitere Information.

Sollte Ihre Seite nach der Umstellung unvollständig oder fehlerhaft geladen werden, prüfen Sie bitte im eCMS-Admin das Site-Log ("Extra > Site-Log") für weitere Informationen.