Apache
Adobe Commerce unterstützt Apache 2.4.x.
Erforderliche Anweisungen für Apache
-
Legen Sie
AllowEncodedSlashes
in der Server-Konfiguration (global) oder in den virtuellen Host-Konfigurationen fest, um zu vermeiden, dass die kodierten Schrägstriche dekodiert werden, die zu Problemen bei URLs führen können. Wenn Sie beispielsweise Produkte mit einem Schrägstrich in der SKU über die API abrufen, möchten Sie dies nicht konvertiert haben. Der Musterblock ist nicht vollständig und andere Anweisungen sind erforderlich.code language-conf <VirtualHost *:443> # Allow encoded slashes AllowEncodedSlashes NoDecode </VirtualHost>
Apache-Neuschreibungen und HTTAccess
In diesem Thema wird beschrieben, wie Sie Apache 2.4-Neuschreibungen aktivieren und eine Einstellung für die .htaccess
🔗 " Konfigurationsdatei“ angeben.
Adobe Commerce verwendet Server-Neuschreibungen und -.htaccess
, um Anweisungen auf Ordnerebene für Apache bereitzustellen. Die folgenden Anweisungen sind auch in allen anderen Abschnitten dieses Themas enthalten.
Verwenden Sie diesen Abschnitt, um Apache 2.4-Neuschreibungen zu aktivieren und eine Einstellung für die verteilte Konfigurationsdatei .htaccess
Adobe Commerce verwendet Server-Neuschreibungen und -.htaccess
, um Anweisungen auf Ordnerebene für Apache bereitzustellen.
-
Aktivieren Sie das Apache Rewrite-Modul:
code language-bash a2enmod rewrite
-
Informationen dazu, wie Sie der Anwendung die Verwendung der Konfigurationsdatei für verteilte
.htaccess
ermöglichen, finden Sie in den Richtlinien in der Apache 2.4-Dokumentation.note tip TIP In Apache 2.4 ist die standardmäßige Site-Konfigurationsdatei des Servers /etc/apache2/sites-available/000-default.conf
.Sie können beispielsweise Folgendes am Ende von
000-default.conf
hinzufügen:code language-none <Directory "/var/www/html"> AllowOverride All </Directory>
note note NOTE Manchmal sind zusätzliche Parameter erforderlich. Weitere Informationen finden Sie in der Apache 2.4-Dokumentation. -
Wenn Sie die Apache-Einstellungen geändert haben, starten Sie Apache neu:
code language-bash service apache2 restart
note note NOTE - Wenn Sie von einer früheren Apache-Version aktualisiert haben, suchen Sie zunächst in
000-default.conf
nach<Directory "/var/www/html">
oder<Directory "/var/www">
. - Sie müssen den Wert von
AllowOverride
in der Anweisung für den Ordner ändern, in dem Sie die Adobe Commerce-Software installieren möchten. Um beispielsweise die Installation im Stammverzeichnis des Webservers vorzunehmen, bearbeiten Sie die -Direktive in<Directory /var/www>
.
- Wenn Sie von einer früheren Apache-Version aktualisiert haben, suchen Sie zunächst in
Für Apache erforderliche Module
Adobe Commerce erfordert die Installation der folgenden Apache-Module:
Überprüfen der Apache-Version
Um die Apache-Version zu überprüfen, die Sie derzeit ausführen, geben Sie Folgendes ein:
apache2 -v
Das Ergebnis sieht in etwa wie folgt aus:
Server version: Apache/2.4.04 (Ubuntu)
Server built: Jul 22 2020 14:35:32
-
Wenn Apache nicht installiert ist lesen Sie:
Installieren oder Aktualisieren von Apache auf Ubuntu
In den folgenden Abschnitten wird beschrieben, wie Sie Apache installieren oder aktualisieren:
- Installieren von Apache
- Aktualisieren Sie auf Apache 2.4 auf Ubuntu, um PHP 7.4 zu verwenden.
Installieren von Apache auf Ubuntu
So installieren Sie die Standardversion von Apache:
-
Installieren von Apache
code language-bash apt-get -y install apache2
-
Überprüfen Sie die Installation.
code language-bash apache2 -v
Das Ergebnis sieht in etwa wie folgt aus:
code language-none Server version: Apache/2.4.18 (Ubuntu) Server built: 2020-04-15T18:00:57
-
Aktivieren Sie Umschreibungen und
.htaccess
.
Aktualisieren von Apache auf Ubuntu
So aktualisieren Sie auf Apache 2.4:
-
Fügen Sie das
ppa:ondrej
-Repository hinzu, das Apache 2.4 enthält:code language-bash apt-get -y update
code language-bash apt-add-repository ppa:ondrej/apache2
code language-bash apt-get -y update
-
Installieren Sie Apache 2.4:
code language-bash apt-get install -y apache2
note note NOTE Wenn der Befehl „apt-get install“ aufgrund von nicht erfüllten Abhängigkeiten fehlschlägt, konsultieren Sie eine Ressource wie https://askubuntu.com/. -
Überprüfen Sie die Installation.
code language-bash apache2 -v
Meldungen ähnlich den folgenden sollten angezeigt werden:
code language-none Server version: Apache/2.4.10 (Ubuntu) Server built: Jul 22 2020 22:46:25
-
Aktivieren Sie Umschreibungen und
.htaccess
.
Installieren von Apache unter CentOS
Adobe Commerce erfordert Neuschreibungen des Apache-Servers. Sie müssen auch den Typ der Anweisungen angeben, die in .htaccess
verwendet werden können. Die Anwendung verwendet diese Anweisungen, um Neuschreibungsregeln anzugeben.
Die Installation und Konfiguration von Apache ist im Grunde ein dreistufiger Prozess: die Software installieren, Rewrites aktivieren und .htaccess
Anweisungen spezifizieren.
Installieren von Apache
-
Installieren Sie Apache 2.4, falls noch nicht geschehen.
code language-bash yum -y install httpd
-
Überprüfen Sie die Installation:
code language-bash httpd -v
Es werden Meldungen ähnlich der folgenden angezeigt, die bestätigen, dass die Installation erfolgreich war:
code language-none Server version: Apache/2.4.40 (Unix) Server built: Oct 16 2020 14:48:21
-
Fahren Sie mit dem nächsten Abschnitt fort.
note note NOTE Auch wenn Apache 2.4 standardmäßig mit CentOS bereitgestellt wird, lesen Sie den folgenden Abschnitt, um es zu konfigurieren.
Rewrites und .htaccess für CentOS aktivieren
-
Öffnen Sie
/etc/httpd/conf/httpd.conf
Datei zur Bearbeitung:code language-bash vim /etc/httpd/conf/httpd.conf`
-
Suchen Sie den Block, der mit beginnt:
code language-conf <Directory "/var/www/html">
-
Ändern Sie den Wert von
AllowOverride
aufAll
.Beispiel:
code language-conf <Directory "/var/www/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory>
note note NOTE Die vorherigen Werte für Order
funktionieren möglicherweise nicht in allen Fällen. Weitere Informationen finden Sie in der Apache-Dokumentation 2.4. -
Speichern Sie die Datei und beenden Sie den Texteditor.
-
Um Apache-Einstellungen anzuwenden, starten Sie Apache neu.
code language-bash service apache2 restart
Rewrites und .htaccess für Ubuntu aktivieren
-
Öffnen Sie
/etc/apache2/sites-available/default
Datei zur Bearbeitung:code language-bash vim /etc/apache2/sites-available/default
-
Suchen Sie den Block, der mit beginnt:
<Directory "/var/www/html">
-
Ändern Sie den Wert von
AllowOverride
aufAll
.Beispiel:
code language-conf <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory>
-
Speichern Sie die Datei und beenden Sie den Texteditor.
-
Konfigurieren Sie Apache für die Verwendung des
mod_rewrite
Moduls:code language-bash cd /etc/apache2/mods-enabled
code language-bash ln -s ../mods-available/rewrite.load
-
Starten Sie Apache neu, um Änderungen anzuwenden:
code language-bash service apache2 restart
Beheben von 403-Fehlern (verboten)
Wenn beim Versuch, auf die Website zuzugreifen, 403 Fehler des Typs „Verboten“ auftreten, können Sie Ihre Apache-Konfiguration oder die Konfiguration Ihres virtuellen Hosts aktualisieren, um Besuchern die Website zu ermöglichen:
Beheben von 403-Fehlern (Verboten) für Apache 2.4
Damit Website-Besuchende auf Ihre Website zugreifen können, verwenden Sie eine der Require-Anweisungen.
Beispiel:
<Directory "/var/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Require all granted
</Directory>
Order
funktionieren möglicherweise nicht in allen Fällen. Weitere Informationen finden Sie in der Apache-Dokumentation.