Apache
Adobe Commerce stöder Apache 2.4.x.
Apache-obligatoriska direktiv
-
Ange
AllowEncodedSlashesi serverkonfigurationen (globalt) eller i den virtuella värdkonfigurationen för att undvika avkodning av kodade snedstreck som kan orsaka problem för URL:er. Om du till exempel hämtar produkter med ett snedstreck i SKU via API:t, vill du inte att det ska konverteras. Exempelblocket är inte fullständigt och andra direktiv krävs.code language-conf <VirtualHost *:443> # Allow encoded slashes AllowEncodedSlashes NoDecode </VirtualHost>
Apache-skrivningar och åtkomst
I det här avsnittet beskrivs hur du aktiverar Apache 2.4-omskrivningar och anger en inställning för den distribuerade konfigurationsfilen, .htaccess.
Adobe Commerce använder serverskrivningar och .htaccess för att tillhandahålla katalognivåinstruktioner för Apache. Följande instruktioner finns även i alla andra avsnitt i det här avsnittet.
Använd det här avsnittet om du vill aktivera Apache 2.4-omskrivningar och ange en inställning för den distribuerade konfigurationsfilen, .htaccess
Adobe Commerce använder serverskrivningar och .htaccess för att tillhandahålla katalognivåinstruktioner för Apache.
-
Aktivera modulen för omskrivning av Apache:
code language-bash a2enmod rewrite -
Om du vill att programmet ska kunna använda den distribuerade konfigurationsfilen
.htaccessläser du riktlinjerna i Apache 2.4-dokumentationen.note tip TIP I Apache 2.4 är serverns standardkonfigurationsfil /etc/apache2/sites-available/000-default.conf.Du kan till exempel lägga till följande i slutet av
000-default.conf:code language-none <Directory "/var/www/html"> AllowOverride All </Directory>note note NOTE Ibland kan ytterligare parametrar behövas. Mer information finns i Apache 2.4-dokumentationen. -
Om du har ändrat Apache-inställningarna startar du om Apache:
code language-bash service apache2 restartnote note NOTE - Om du uppgraderade från en tidigare Apache-version söker du först efter
<Directory "/var/www/html">eller<Directory "/var/www">i000-default.conf. - Du måste ändra värdet för
AllowOverridei direktivet för den katalog som du vill installera Adobe Commerce-programvaran i. Om du till exempel vill installera i webbserverdokumentet redigerar du direktivet i<Directory /var/www>.
- Om du uppgraderade från en tidigare Apache-version söker du först efter
Nödvändiga moduler för Apache
Adobe Commerce kräver att följande Apache-moduler är installerade:
Verifiera Apache-versionen
Kontrollera vilken Apache-version du kör genom att ange:
apache2 -v
Resultatet ser ut ungefär så här:
Server version: Apache/2.4.04 (Ubuntu)
Server built: Jul 22 2020 14:35:32
-
Om Apache inte är installerat, se:
Installera eller uppgradera Apache på Ubuntu
I följande avsnitt beskrivs hur du installerar eller uppgraderar Apache:
- Installera Apache
- Uppgradera till Apache 2.4 i Ubuntu för att använda PHP 7.4.
Installerar Apache på Ubuntu
Installera standardversionen av Apache:
-
Installera Apache
code language-bash apt-get -y install apache2 -
Verifiera installationen.
code language-bash apache2 -vResultatet ser ut ungefär så här:
code language-none Server version: Apache/2.4.18 (Ubuntu) Server built: 2020-04-15T18:00:57 -
Aktivera omskrivningar och
.htaccess.
Uppgraderar Apache på Ubuntu
Uppgradera till Apache 2.4:
-
Lägg till databasen
ppa:ondrejsom har Apache 2.4:code language-bash apt-get -y updatecode language-bash apt-add-repository ppa:ondrej/apache2code language-bash apt-get -y update -
Installera Apache 2.4:
code language-bash apt-get install -y apache2note note NOTE Om kommandot "apt-get install" misslyckas på grund av ofullständiga beroenden bör du kontakta en resurs som https://askubuntu.com/. -
Verifiera installationen.
code language-bash apache2 -vMeddelanden som liknar följande bör visas:
code language-none Server version: Apache/2.4.10 (Ubuntu) Server built: Jul 22 2020 22:46:25 -
Aktivera omskrivningar och
.htaccess.
Installerar Apache på CentOS
Adobe Commerce kräver omskrivning av Apache-servern. Du måste också ange vilken typ av direktiv som kan användas i .htaccess, som programmet använder för att ange regler för omskrivning.
Installation och konfigurering av Apache är i princip en trestegsprocess: installera programmet, aktivera omskrivningar och ange .htaccess direktiv.
Installerar Apache
-
Installera Apache 2.4 om du inte redan har gjort det.
code language-bash yum -y install httpd -
Verifiera installationen:
code language-bash httpd -vMeddelanden som liknar följande för att bekräfta att installationen lyckades:
code language-none Server version: Apache/2.4.40 (Unix) Server built: Oct 16 2020 14:48:21 -
Fortsätt med nästa avsnitt.
note note NOTE Även om Apache 2.4 finns som standard med CentOS, se följande avsnitt för att konfigurera det.
Aktivera omskrivning och .htaccess för CentOS
-
Öppna filen
/etc/httpd/conf/httpd.confför redigering:code language-bash vim /etc/httpd/conf/httpd.conf` -
Leta reda på det block som börjar med:
code language-conf <Directory "/var/www/html"> -
Ändra värdet för
AllowOverridetillAll.Exempel:
code language-conf <Directory "/var/www/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory>note note NOTE Föregående värden för Orderkanske inte fungerar i alla fall. Mer information finns i Apache-dokumentationen (2.4). -
Spara filen och avsluta textredigeraren.
-
Starta om Apache om du vill använda Apache-inställningarna.
code language-bash service apache2 restart
Aktivera omskrivning och .htaccess för Ubuntu
-
Öppna filen
/etc/apache2/sites-available/defaultför redigering:code language-bash vim /etc/apache2/sites-available/default -
Leta reda på det block som börjar med:
<Directory "/var/www/html"> -
Ändra värdet för
AllowOverridetillAll.Exempel:
code language-conf <Directory "/var/www/html"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all </Directory> -
Spara filen och avsluta textredigeraren.
-
Konfigurera Apache att använda modulen
mod_rewrite:code language-bash cd /etc/apache2/mods-enabledcode language-bash ln -s ../mods-available/rewrite.load -
Starta om Apache för att tillämpa ändringarna:
code language-bash service apache2 restart
Lösa 403-fel (ej tillåtet)
Om du stöter på 403 Otillåtna fel när du försöker få åtkomst till webbplatsen kan du uppdatera din Apache-konfiguration eller din virtuella värdkonfiguration så att besökarna kan komma åt webbplatsen:
Lösning av 403 Otillåtna fel för Apache 2.4
Använd något av direktiven som krävs om du vill att webbplatsbesökare ska kunna komma åt din webbplats.
Exempel:
<Directory "/var/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Require all granted
</Directory>
Order kanske inte fungerar i alla fall. Mer information finns i Apache-dokumentationen.