Home / Shopware / Installieren und Einrichten des Symfony Frameworks

Technische Voraussetzungen

Bevor Sie Ihre erste Symfony App erstellen, müssen Sie folgendes beachten:

●Installieren Sie PHP 8.0.2 oder neuer und diese PHP-Erweiterungen (die in den meisten PHP 8-Installationen standardmäßig bereits installiert und aktiviert sind): Ctype, iconv, PCRE, Session, SimpleXML und Tokenizer;
●Beachten Sie, dass alle neueren, veröffentlichten Versionen von PHP während der Dauer jeder Symfony-Version (einschließlich neuer Hauptversionen) unterstützt werden. Beispielsweise wird PHP 8.1 unterstützt.
●Installieren Sie Composer, die zur Installation von PHP-Paketen verwendet werden.

Optional können Sie auch Symfony CLI installieren. Dadurch wird eine Binärdatei namens Symfony erstellt, die alle benötigten Tools bereitstellt, um Ihre Symfony Anwendung lokal zu entwickeln und auszuführen.
Die Symfony-Binärdatei bietet auch ein Tool, mit dem Sie überprüfen können, ob Ihr Computer alle Anforderungen erfüllt. Öffnen Sie Ihr Konsolenterminal und führen Sie diesen Befehl aus:
blog-image

Erstellen von Symfony-Anwendungen
Öffnen Sie Ihr Konsolenterminal und führen Sie einen der folgenden Befehle aus, um eine neue Symfony App zu erstellen:
# Führen Sie dies aus, wenn Sie eine herkömmliche Webanwendung erstellen
blog-image

Der einzige Unterschied zwischen diesen beiden Befehlen ist die Anzahl der standardmäßig installierten Pakete. Die Webapp Option installiert alle Pakete, die Sie normalerweise zum Erstellen von Webanwendungen benötigen, sodass die Installationsgröße größer ist.

Wenn Sie die Symfony Binärdatei nicht verwenden, führen Sie die folgenden Befehle aus, um die neue Symfony Anwendung mit Composer zu erstellen:

Unabhängig davon, welche Befehle Sie ausführen, um die Symfony Anwendung zu erstellen, richten alle ein neues my_project_directory / Verzeichnis ein, laden einige Abhängigkeiten herunter und generieren sogar die grundlegenden Verzeichnisse und Dateien, die Sie für den Einstieg benötigen. Mit anderen Worten: Ihre neue Anwendung ist fertig!
blog-image

Einrichten eines bestehenden Symfony Projekts

Neben der Erstellung neuer Symfony Projekte könne Sie auch an Projekten arbeiten, die bereits von anderen Entwicklern hergestellt wurden. In diesem Fall müssen Sie nur den Projektcode abrufen und die Abhängigkeiten mit Composer installieren. Angenommen, Ihr Team verwendet Git, richten Sie Ihr Projekt mit den folgenden Befehlen ein:
blog-image

Ausführen von Symfony Anwendungen

In der Produktion sollten Sie einen Webserver wie Nginx oder Apache installieren und so konfigurieren, dass Symfony ausgeführt wird. Diese Methode kann auch verwendet werden, wenn Sie nicht den lokalen Symfony Webserver für die Entwicklung nutzen.

Für die lokale Entwicklung ist der bequemste Weg Symfony auszuführen, indem der lokale Webserver verwendet wird, der von der Symfony-Binärdatei bereitgestellt wird. Dieser lokale Server bietet unter anderem Unterstützung für HTTP/2, andauernde Anfragen, TLS/SSL und die automatische Generierung von Sicherheitszertifikaten.

Öffnen Sie Ihr Konsolenterminal, wechseln Sie in Ihr neues Projektverzeichnis und starten Sie den lokalen Webserver wie folgt:

Öffnen Sie Ihren Browser und navigieren Sie sich zu http://localhost:8000/. Wenn alles funktioniert, wird eine Willkommensseite angezeigt. Später, wenn Sie mit der Arbeit fertig sind, halten Sie den Server an, indem Sie Strg + C von Ihrem Terminal aus drücken.
blog-image

Installieren von Paketen

Eine gängige Praxis bei der Entwicklung von Symfony-Anwendungen ist die Installation von Paketen (Symfony nennt sie Bundles), die gebrauchsfertige Funktionen bereitstellen. Pakete erfordern normalerweise ein gewisses Setup, bevor sie verwendet werden (Bearbeiten einiger Dateien, um das Bundle zu aktivieren, Erstellen einiger Dateien zum Hinzufügen einer anfänglichen Konfiguration usw.).

Meistens kann diese Einrichtung automatisiert werden und enthält deshalb Symfony Flex, ein Tool, um die Installation / Deinstallation von Paketen in Symfony-Anwendungen zu vereinfachen. Technisch gesehen ist Symfony Flex ein Composer Plugin, das standardmäßig beim Erstellen einer neuen Symfony Apps installiert wird und die häufigsten Aufgaben von Symfony Apps automatisiert.

Symfony Flex ändert den Status der Befehle zum Anfordern, Aktualisieren und Entfernen von Composern, um erweiterte Funktionen herzustellen. Betrachten Sie das folgende Beispiel:

Wenn Sie diesen Befehl in einer Symfony App ausführen, die Flex nicht verwendet, wird ein Composer-Fehler angezeigt, der erklärt, dass die Protokollierung kein gültiger Paketname ist. Wenn die Anwendung jedoch Symfony Flex installiert und aktiviert hat, sind die Verwendungen des offiziellen Symfony-Loggers erforderlich.

Dies ist möglich, weil viele Symfony-Pakete / Bundles „Rezepte“ definieren, bei denen es sich um eine Reihe automatisierter Anweisungen zum Installieren und Aktivieren von Paketen in Symfony-Anwendungen handelt. Flex verfolgt die installierten Rezepte in einer Symfony.lock-Datei, die in Ihr Code-Repository übernommen werden muss.

Symfony Flex-Rezepte werden von der Community beigesteuert und in zwei öffentlichen Repositories gespeichert:

●Das Hauptrezept-Repository ist eine kuratierte Liste von Rezepten für qualitativ hochwertige und gepflegte Pakete. Symfony Flex sucht standardmäßig nur in diesem Repository.

●Das Contrib-Repository enthält alle von der Community erstellten Rezepte. Alle von ihnen funktionieren garantiert, aber ihre zugehörigen Pakete könnten nicht gewartet werden. Symfony Flex wird Sie um Erlaubnis bitten, bevor Sie eines dieser Rezepte installieren.

Lesen Sie die Symfony Recipes-Dokumentation, um alles darüber zu erfahren, wie Sie Rezepte für Ihre Pakete erstellen.
blog-image

Überprüfung von Sicherheitslücken

Die Symfony Binärdatei, die bei der Installation der Symfony CLI erstellt wird, enthält einen Befehl mit dem Sie überprüfen können, ob die Abhängigkeiten Ihres Projekts bekannte Sicherheitslücken enthalten:

Eine gute Sicherheitspraxis besteht darin, diesen Befehl regelmäßig auszuführen, um kompromittierte Abhängigkeiten so schnell wie möglich zu aktualisieren oder ersetzen. Die Sicherheitsüberprüfung erfolgt lokal durch Abrufen der öffentlichen PHP-Sicherheitshinweise-Datenbank, sodass Ihre composer.lock-Datei nicht an das Netzwerk gesendet wird.

Der Befehl check:security wird mit einem Beendigungscode ungleich Null beendet, wenn eine Ihrer Abhängigkeiten von einer bekannten Sicherheitsanfälligkeit betroffen ist. Auf diese Weise können Sie es Ihrem Projekterstellungsprozess und Ihren Continuous Integration-Workflows hinzufügen, damit sie bei Schwachstellen fehlschlagen.
blog-image

Die Symfony Demo Anwendung

Die Symfony Demo Application ist eine voll funktionsfähige Anwendung, die den empfohlenen Weg zur Entwicklung von Symfony-Anwendungen zeigt. Es ist ein großartiges Lernwerkzeug für Symfony-Neulinge und sein Code enthält Tonnen von Kommentaren und hilfreichen Notizen.

Führen Sie diesen Befehl aus, um ein neues Projekt basierend auf der Symfony Demo-Anwendung zu erstellen:
blog-image

Jetzt können Sie mit dem Programmieren beginnen!

Wenn Sie mehr über E-Commerce-Entwicklungsplattformen oder Apps erfahren möchten, lesen Sie unsere Lexika für Shopify und Shopware. Unser engagiertes Outsourcing-Team kann Ihr Partner im E-Commerce sein. 

Arrange a free consultation now!