Entwicklungsumgebung für Magento Shop

Magento: lokale Entwicklungsumgebung mit XAMPP

Dieses Tutorial zeigt, wie ihr einen Magento Shop aus der Produktivumgebung in eine lokale Entwicklungsumgebung auf dem PC übertragt.

Bild: www.quickmeme.com

 

Magento Shop Backup anlegen

Um eine lokale Testumgebung für das Shopsystem Magento einzurichten benötigt ihr entweder das Package für eine Neuinstallation oder ein Backup eures Produktivsystems. Wie ihr ein Backup von eurer Magento Shop Installation anlegt habe ich in meinem Artikel mit Video-Guide: Magento Shop Backup erstellen erläutert.

 

Entwicklungsumgebung (SQL Datenbank und Apache Webserver) mit XAMPP einrichten

Um das Magento Backup auf einem lokalen Rechner auszuführen benötigt ihr eine Entwicklungsplattform mit SQL Datenbank und einem Apache Webserver. Für meine lokale Testumgebung verwende ich XAMPP. Eigentlich ist die Installation selbsterklärend. Wer es genauer wissen will findet hier eine schöne Anleitung, wie man für eine frische Magento Installation eine Entwicklungsumgebung einrichtet.

 

Magento Shop Backup lokal in die Testumgebung einspielen

Verwendet ihr an Stelle eines bestehenden Backups eine frischen Installation, können einig Schritte dieser Anleitung übersprungen werden.

 

1. XAMPP Panel starten. Dieses dient als lokale Entwicklungsumgebung mit Apache Webserver und SQL Datenbank.

 

2. Datenbank einspielen. Öffnet dazu phpMyAdmin über das XAMPP Panel. Legt dort eine neue Datenbank an. Spielt die zuvor gesicherte  DB über die Importieren Funktion ein

 

Mögliche Stolperfallen beim Einspielen eines SQL Datenbank-Backup in phpMyAdmin:

Standardmäßig ist die Upload Größe für Datenbanken in phpMyAdmin auf 2 MB begrenzt. Da die Magento Datenbank eines bestehenden Online Shops einige MB mehr umfasst, muss man zunächst das Upload Limit in phpMyAdmin anpassen, um die SQL Datenbank hochladen zu können. Das Upload Limit für SQL Datenbanken lässt sich in der PHP.ini von XAMPP anpassen.

Dazu geht man wie folgt vor:

  • XAMPP Starten und beim Apache Server auf Config -> PHP (php.ini) gehen. Nach folgenden Einträgen suchen und dort den gewünschten Wert eintragen (detaillierte Infos hier):
    • upload_max_filesize = 20M
    • post_max_size = 20M
  • XAMPP (oder den Apache Webserver) neu starten
  • phpMyAdmin mit Klick auf „Admin“ im XAMPP Panel erneut aufrufen
  • SQL Datenbank einspielen:
    • Klick auf „Datenbanken“ -> „Neue Datenbank erstellen“
    • DB Name vergeben, Zeichensatz UTF8_general_ci auswählen, „Anlegen“ klicken
    • neue Datenbank links im Baum auswählen, im Hauptmenü „Importieren“ anklicken, „Durchsuchen…“ und den Pfad zu eurer SQL Datenbank angeben, mit „OK“ bestätigen

Nicht erschrecken, beim Einspielen einer 5 MB großen gezipten Datei (Datenbankgröße ungepackt ca. 35 MB) mit 2250 SQL Querys hat das Einspielen ca. 30 Sekunden gedauert. Im phpMyAdmin selbst erscheint keine Ladeanzeige. Je nach Browser seht ihr aber in der Statuszeile oder dem Favicon ein Ladesymbol

 

3. Magento Shop Dateien lokal einspielen. Habt ihr ein Magento Backup erstellt, dann braucht ihr nur das Archiv in euren …/XAMPP/htdocs/Mein-Magento-Ordner/ entpacken. Das geht deutlich schneller als alle Daten einzeln mittels FTP Programm vom Server herunterzuladen und dann auf der Festplatte / SSD zu speichern.

 

4. Datenbank anpassen: Wenn ihr euren Shop jetzt mit http://localhost/Mein-Magento-Ordner/ aufrufen wollt, erscheint eine Datenbank Fehlermeldung. Die Datenbank muss noch für die Lokale Installation angepasst werden

Geht dazu in eurer Magento Shop Installation in den Ordner /app/etc/ und sucht die Dateien local.xml. Dort müsst die Zugangsdaten für eure Datenbank und den lokalen Server eintragen:

<default_setup>
<connection>
<host><![CDATA[http://127.0.0.1/]]></host>
<username><![CDATA[root]]></username>
<password><![CDATA[]]></password>
<dbname><![CDATA[mein-DB-Name]]></dbname>
<initStatements><![CDATA[SET NAMES utf8]]></initStatements>
<model><![CDATA[mysql4]]></model>
<type><![CDATA[pdo_mysql]]></type>
<pdoType><![CDATA[]]></pdoType>
<active>1</active>
</connection>
</default_setup>

Gebt den von euch vergebenen Datenbankname ein. Bei einer frischen XAMPP Installation lautet der Benutzername für jede Datenbank im Auslieferungszustand „root“ und das Passwort ist leer [].

(Ggf. muss auch noch die config.xml angepasst werden.)

Alternative: Die local.xml einfach löschen und die Base URL aufrufen, dann kann man die Werte auch über den Assistenten eingeben.

 

5 . Base URL in der Datenbank anpassen: Über phpMyAdmin in der lokalen Datenbank die Tabelle core_config_data aufrufen und nach den Einträgen web/secure/base_url und web/unsecure/base_url suchen. Dort werden beide Einträge mit der URL eurer Domain mit dem Pfad der Testumgebung ersetzt.

Bei einer lokalen Magento Installation kann es zu Problemen mit dem localhost/Verzeichnis kommen. Verwendet daher http://127.0.0.1/Verzeichnis/ als Alternative

 

6. Die im Verzeichnis /var/ befindlichen Ordner leeren (nicht löschen!)

 

7. Evtl. muss man noch die Datei .htaccess im Hauptverzeichnis anpassen. Sucht dort nach der Zeile mit „RewriteBase“ und tragt da den Ordner der Lokalen Installation ein. In meinem Fall waren noch weitere URL Rewrites zu entfernen, um die Magento Entwicklungsumgebung korrekt zu nutzen.

 

8. FRTIG

 

Wen die lokale IP-Adresse in der Browserzeile beim Entwickeln in der Testumgebung stört, der kann per localhosts Datei Windows bzw. alle Browser auf dem PC so anweisen, dass eine Anfrage zu www.Meine-URL.de auf die Magento Installation im XAMPP Ordner weitergeleitet wird. Das spart ggf. den Schritt mit der Anpassung der Base URLs in der Datenbank. Eine Anleitung dazu hier. Allerdings könnt ihr dann nicht mehr gleichzeitig auf das Produktivsystem zugreifen.

Schreibe einen Kommentar