Shopware mit Object Storage verbinden oder trennen

Shopware mit Object Storage verbinden oder trennen

Mit unserer Object Storage steht Ihnen eine flexible und kostengünstige Möglichkeit zum Speichern Ihrer statischen Dateien zur Verfügung. Sehr praktisch ist, dass die Bilder aus Ihrem Shopware-Shop direkt in Ihrer Object Storage gespeichert werden können. Somit belegen die Shopdaten keinen Speicherplatz auf dem Server. Hierfür müssen einmalig alle Dateien aus dem Shop in Ihr Bucket verschoben und eine Verbindung zwischen Ihrer Object Storage und Shopware hergestellt werden. Wie das geht, erläutern wir auf dieser Seite. Natürlich kann es passieren, dass Sie die Object Storage nicht mehr nutzen möchten oder vorübergehend die Verbindung zwischen Object Storage und Shopware wieder trennen müssen. Auch diesen Fall erläutern wir auf dieser Webseite. Sollten Sie weitere Fragen haben, wenden Sie sich gerne an unseren Support.

Wichtige Vorbereitung


Shell-Benutzer Anlegen

Um die Verbindung zwischen Object Storage und Shopware herzustellen, müssen Sie auf die Kommandozeile Ihres Servers zugreifen. Dafür benötigen Sie einen Shell-Benutzer. Sollten Sie diesen schon angelegt haben, können sie sofort mit der Anleitung starten. Ansonsten müssen Sie zuerst einen Shell-Benutzer anlegen (Anleitung für das Anlegen eines Shell-Benutzers). Hier die Kurzanleitung:

  • Loggen Sie sich im ISPConfig Control Panel ein.
  • 1. Wählen Sie im Hauptmenü "Webseite".
  • 2. Gehen Sie im Untermenü auf "Shell-Benutzer".
  • 3. Klicken Sie auf "Neuen Shell Benutzer hinzufügen".
  • Es öffnet sich ein Formular, das ausgefüllt werden muss.
  • Hilfe zum Formular erhalten Sie unter der Anleitung (siehe Link).
  • Mit "speichern" (grüner Button) bestätigen.

Ergebnis: Ein Shell-Benutzer ist angelegt!


Shopware und Object Storage verbinden

Alle aktuellen statischen Daten aus dem Shopware-Shop müssen einmalig manuell in die Object Storage übertragen werden. Dafür ist eine Verbindung zwischen Shopware und Object Storage nötig. Besteht diese Verbindung, wählt der Server beim Upload der Bilder im Shop automatisch die Object Storage.

Nachdem der Shell-Benutzer angelegt ist, können wir mit der Anleitung beginnen. Wir erklären Schritt für Schritt, wie Sie die Bilder vom Server in die Object Storage verschieben und eine Verbindung zwischen Shopware und Object Storage herstellen.

Diese Anleitung gilt für alle 5er Versionen ab Shopware 5.5.8.
Sollten Sie zum Beispiel Shopware 5.4, 5.5.5 oder 6 im Einsatz haben, sprechen Sie bitte mit unserem Support: 04131 / 22 78 10


1

Damit jeder die Daten aus der Object Storage im Online-Shop sehen kann, müssen die Dateien öffentlich zugänglich sein. Dafür stellen Sie einmal die Storage Policy auf "public".

  • Loggen Sie sich im ISP Config Kundeninterface ein.
  • Wählen Sie im Hauptmenü "Mein Konto".
  • Gehen Sie links in der Sidebar auf "Meine Object Storages".
  • Sie sehen eine Liste aller Buckets unter Ihrem Kundenkonto.
  • Wählen Sie das entsprechende Bucket aus.
  • Ändern Sie hier die Storage "Policy" per Dropdown auf "public" (siehe Screen).
  • Mit "speichern" (grüner Button) bestätigen.

Ergebnis: Storage policy wurde auf "public" gestellt!



2

Sie müssen Ergänzungen in der config.php vornehmen.

  • Loggen Sie sich mit Ihrem FTP-Zugang ein.
  • Wählen Sie "web" und danach "config.php".
  • Öffnen Sie mit einem Editor die Datei.

Ergebnis: Die config.php ist geöffnet!



3

Der nachfolgende Part muss in der config.php ergänzt werden. Sie brauchen die Zugangsdaten Ihres Buckets aus der Bestätigungsmail, um folgende Punkte anzupassen:

  • "Bucket" aus der Mail entnehmen und ändern.
  • "Key" aus der Mail entnehmen und ändern.
  • "Secret" aus der Mail entnehmen und ändern.
 'cdn' => [
        'backend' => 's3',
        'strategy' => 'md5',
        'liveMigration' => true,
        'adapters' => [
            's3' => [
                'type' => 's3',
                'mediaUrl' => 'https://os1.meinecloud.io/EIGENERBUCKETNAME/',
                'bucket' => 'EIGENERBUCKETNAME',
                'region' => 'eu-central-1',
                'endpoint' => 'https://os1.meinecloud.io',
                'use_path_style_endpoint' => true,
                'credentials' => [
                    'key' => 'HIERDEREIGENEACCESSKEY',
                    'secret' => 'HIERDEREIGENESECRETKEY',
                ],
            ],
        ],
   ],
  • Vollständig sieht die Datei dann ungefähr so aus:
 <?php return array (
  'db' =>
  array (
    'host' => 'localhost',
    'port' => '3306',
    'username' => 'USERNAME',
    'password' => 'PASSWORD',
    'dbname' => 'DBNAME',
  ),
  'cdn' => [
        'backend' => 's3',
        'strategy' => 'md5',
        'liveMigration' => true,
        'adapters' => [
            's3' => [
                'type' => 's3',
                'mediaUrl' => 'https://os1.meinecloud.io/EIGENERBUCKETNAME/',
                'bucket' =>  'EIGENERBUCKETNAME',
                'region' => 'eu-central-1',
                'endpoint' => 'https://os1.meinecloud.io',
                'use_path_style_endpoint' => true,
                'credentials' => [
                    'key' => 'HIERDEREIGENEACCESSKEY',
                    'secret' =>'HIERDEREIGENESECRETKEY',
                ],
            ],
        ],
   ],
);
  • Laden Sie die Datei über den FTPClient wieder hoch.

Ergebnis: Die config.php ist angepasst und hochgeladen!

Wichtiger Hinweis: Bei einigen Shopware-Versionen müssen andere Ergänzungen an der config.php vorgenommen werden. Sollten die Ergänzungen dieser Anleitung bei Ihnen nicht funktionieren, kontaktieren Sie bitte unseren Support.



4

Aus dem Shopware-Verzeichnis heraus müssen die Bilder in die Object Storage verschoben werden. Erst danach sind die Bilder nicht mehr auf dem lokalen Server verfügbar.

  • Rufen Sie über die Kommandozeile den Server auf.
  • Geben Sie folgenden Befehl ein:
  • Hinweis: "/opt/php-7.3" durch die für den Shop genutzte PHP-Version ersetzen.

/opt/php-7.3/bin/php bin/console sw:media:migrate --from=local --to=s3

  • Wenn der Transfer erfolgreich war, erhalten Sie folgenden Output:

web2@dev10:/var/www/sw5.meinhosting.xyz/web$ /opt/php-7.3/bin/php bin/console sw:media:migrate --from=local --to=s3 // Migrating all media files in your filesystem. This might take some time, depending on the number of media files you have.

199/199 [============================] 100%, 0 migrated, 0 skipped, 199 moved, Elapsed: 12 secs
Current file: media/unknown/65/2f/08/Datei.txt

========== =================
Action Number of items
========== =================
migrated 0
skipped 0
moved 199
========== =================
web2@dev10:/var/www/sw5.meinhosting.xyz/web$

Ergebnis: Die Bilder wurden übertragen!



5

Es muss noch der Shopware-Cache geleert werden. Das geht über das Shopware-Backend oder über die Kommandozeile.

  • Über die Kommandozeile folgenden Befehl eingeben:
  • Hinweis: "/opt/php-7.3" durch die für den Shop genutzte PHP-Version ersetzen.

/opt/php-7.3/bin/php bin/console sw:cache:clear

  • Sie erhalten folgenden Output:

web2@dev10:/var/www/sw5.meinhosting.xyz/web$ /opt/php-7.3/bin/php bin/console sw:cache:clear

// Clearing the cache for the production environment

[OK] Cache for the "production" environment was successfully cleared.

web2@dev10:/var/www/sw5.meinhosting.xyz/web$

Ergebnis: Der Cache wurde geleert.


Geschafft: Beim Hochladen der Bilder werden diese jetzt automatisch in die Object Storage übertragen!



Shopware und Object Storage trennen!

Wenn Sie sich entschieden haben, die Object Storage nicht mehr zu nutzen, müssen die Daten wieder auf das lokale Dateisystem verschoben werden. Wir zeigen kurz wie das geht!


1

Rufen Sie für die Übertragung wieder die Kommandozeile auf.

  • Über die Kommandozeile folgenden Befehl eingeben:
  • Hinweis: "/opt/php-7.3" durch die für den Shop genutzte PHP-Version ersetzen.

/opt/php-7.3/bin/php bin/console sw:media:migrate --from=s3 --to=local

Ergebnis: Die Daten wurden übertragen!



2

Dann muss die Object Storage-Konfiguration aus der config.php entfernt werden:

  • Loggen Sie sich mit Ihrem FTP-Zugang ein.
  • Wählen Sie "web" und danach "config.php".
  • Öffnen Sie mit einem Editor die Datei.
  • Entfernen Sie den Part, den Sie unter Punkt 3 beim Verbinden hinzugefügt haben.
  • Die config.php sollte jetzt ungefähr so aussehen:
<?php return array (
  'db' =>
  array (
    'host' => 'localhost',
    'port' => '3306',
    'username' => 'USERNAME',
    'password' => 'PASSWORD',
    'dbname' => 'DBNAME',
  ),
);
  • Laden Sie die Datei über den FTPClient wieder hoch.

Ergebnis: Die config.php ist angepasst und hochgeladen.



3

Zum Schluss muss der Shopware-Cache wieder geleert werden.

  • Über die Kommandozeile folgenden Befehl eingeben:
  • Hinweis: "/opt/php-7.3" durch die für den Shop genutzte PHP-Version ersetzen.

/opt/php-7.3/bin/php bin/console sw:cache:clear

  • Sie erhalten folgenden Output:

web2@dev10:/var/www/sw5.meinhosting.xyz/web$ /opt/php-7.3/bin/php bin/console sw:cache:clear

// Clearing the cache for the production environment

[OK] Cache for the "production" environment was successfully cleared.

web2@dev10:/var/www/sw5.meinhosting.xyz/web$

Ergebnis: Der Cache wurde geleert! Die Verbindung zur Object Storage aufgehoben.


Geschafft: Shopware und die Object Storage sind wieder getrennt!



Zu allen Anleitungen ▶

Finden Sie den passenden Tarif

Unser Tarifberater hilft Ihnen dabei, das passende Paket zu finden. Bei Fragen berät Sie unser Sales-Team sehr gerne unter +49 (0) 4131 / 22 78 1-25 oder sales@timmehosting.de.

Bitte beachten Sie: Der Tarifberater dient nur der groben Orientierung. Ihr tatsächlicher Bedarf kann durch den Ressourcenbedarf Ihrer Anwendung(en), tageszeitabhängige/saisonale/aktionsbedingte Schwankungen des Besucheraufkommens, geplantes Wachstum und weitere Faktoren von der Empfehlung abweichen.

  • 1
  • 2
  • 3
  • 4
  • 5

Was möchten Sie hosten?

Möchten Sie einen oder mehrere Shops hosten? (Eine Multishop-Installation gilt als ein Shop.)

Möchten Sie eine oder mehrere Websites hosten? (Eine Multisite-Installation gilt als eine Website.)

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Besucher haben Sie insgesamt pro Tag?

Wieviele Artikel haben Sie insgesamt in Ihrem Shop/Ihren Shops (inkl. Varianten)?

Wieviele Artikel haben Sie insgesamt in Ihrem Shop/Ihren Shops (inkl. Varianten)?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wieviel Speicherplatz benötigen Sie insgesamt?

Wir empfehlen Ihnen unser

Managed vServer Hosting

Zu den Managed vServer Paketen

Managed Server Hosting

Zu den Managed Server Paketen

Private Cloud Hosting

Zu den Private Cloud Paketen