Einrichten mehrerer Websites mit Apache
Wir gehen davon aus, dass
Kopieren Sie bei Bedarf das vorhandene Einstiegspunktskript index.php
für Ihre Website- oder Store-Ansicht und fügen Sie Folgendes hinzu:
-
Sie arbeiten an einer Entwicklungsmaschine (Laptop, virtuelle Maschine usw.)
Möglicherweise sind zusätzliche Aufgaben erforderlich, um mehrere Websites in einer gehosteten Umgebung bereitzustellen. Wenden Sie sich diesbezüglich an Ihren Hosting-Provider.
Für die Einrichtung von Adobe Commerce in der Cloud-Infrastruktur sind zusätzliche Aufgaben erforderlich. Nachdem Sie die in diesem Thema behandelten Aufgaben abgeschlossen haben, finden Sie weitere Informationen unter Einrichten mehrerer Websites oder Stores im Leitfaden Commerce on Cloud Infrastructure.
-
Sie verwenden einen virtuellen Host pro Website. Die Konfigurationsdatei des virtuellen Hosts ist
/etc/httpd/httpd.conf
Verschiedene Versionen von Apache unter verschiedenen Betriebssystemen richten virtuelle Hosts unterschiedlich ein. Lesen Sie die Apache-Dokumentation oder einen Netzwerkadministrator, wenn Sie nicht sicher sind, wie Sie einen virtuellen Host einrichten.
-
Die Commerce-Software ist in
/var/www/html/magento2
installiert. -
Sie haben zwei andere Websites als die Standardwebsite:
french.mysite.mg
mit Website-Codefrench
und Store-Ansichtscodefr
german.mysite.mg
mit Website-Codegerman
und Store-Ansichtscodede
Roadmap für die Einrichtung mehrerer Websites mit Apache
Das Einrichten mehrerer Stores umfasst die folgenden Aufgaben:
- Richten Sie Websites, Stores und speichern Sie Ansichten im Admin ein.
- Erstellen Sie einen Apache Virtual Host pro Commerce-Website.
Schritt 1: Erstellen von Websites, Geschäften und Speichern von Ansichten in der Admin-Konsole
Siehe Einrichten mehrerer Websites, Stores und Speichern von Ansichten in der Admin-Konsole.
Schritt 2: Erstellen von virtuellen Apache-Hosts
In diesem Abschnitt wird beschrieben, wie Sie Werte für MAGE_RUN_TYPE
und MAGE_RUN_CODE
mithilfe der Apache-Server-Variablen SetEnvIf
in einem virtuellen Host festlegen.
Weitere Informationen zu SetEnvIf
finden Sie unter:
So erstellen Sie Apache Virtual Hosts:
-
Als Benutzer mit
root
-Berechtigungen öffnen Sie die Konfigurationsdatei des virtuellen Hosts in einem Texteditor.Öffnen Sie beispielsweise
/etc/httpd/conf/httpd.conf
-
Suchen Sie den Abschnitt, der mit
<VirtualHost *:80>
beginnt. -
Erstellen Sie die folgenden virtuellen Hosts nach vorhandenen virtuellen Hosts:
code language-conf <VirtualHost *:80> ServerName mysite.mg DocumentRoot /var/www/html/magento2/pub/ </VirtualHost> <VirtualHost *:80> ServerName french.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "french" SetEnv MAGE_RUN_TYPE "website" </VirtualHost> <VirtualHost *:80> ServerName german.mysite.mg DocumentRoot /var/www/html/magento2/pub/ SetEnv MAGE_RUN_CODE "german" SetEnv MAGE_RUN_TYPE "website" </VirtualHost>
-
Speichern Sie Ihre Änderungen in
httpd.conf
und beenden Sie den Texteditor. -
Starten Sie Apache neu:
- CentOS:
service httpd restart
- Ubuntu:
service apache2 restart
- CentOS:
Überprüfen der Site
Sofern kein DNS für die URLs Ihrer Stores eingerichtet ist, müssen Sie in Ihrer hosts
-Datei eine statische Route zum Host hinzufügen:
-
Suchen Sie die Datei des Betriebssystems
hosts
. -
Fügen Sie die statische Route im Format hinzu:
code language-conf <ip-address> french.mysite.mg <ip-address> german.mysite.mg
-
Rufen Sie eine der folgenden URLs in Ihrem Browser auf:
code language-http http://mysite.mg/admin http://french.mysite.mg/frenchstoreview http://german.mysite.mg/germanstoreview
- Möglicherweise sind zusätzliche Aufgaben erforderlich, um mehrere Websites in einer gehosteten Umgebung bereitzustellen. Wenden Sie sich diesbezüglich an Ihren Hosting-Provider.
- Weitere Aufgaben sind erforderlich, um Adobe Commerce in der Cloud-Infrastruktur einzurichten. Weitere Informationen finden Sie unter Einrichten mehrerer Cloud-Websites oder -Stores im Handbuch Commerce on Cloud Infrastructure.
Fehlerbehebung
- Wenn Ihre französischen und deutschen Sites 404 s zurückgeben, Ihr Admin jedoch geladen wird, stellen Sie sicher, dass Sie Schritt 6: Hinzufügen des Store-Codes zur Basis-URL abgeschlossen haben.
- Wenn alle URLs 404 s zurückgeben, stellen Sie sicher, dass Sie Ihren Webserver neu starten.
- Wenn der Administrator nicht ordnungsgemäß funktioniert, stellen Sie sicher, dass Sie Ihre virtuellen Hosts ordnungsgemäß eingerichtet haben.