Apache

Adobe Commerce supporta Apache 2.4.x.

Direttive obbligatorie Apache

  1. Impostare AllowEncodedSlashes nella configurazione del server (a livello globale) o nelle configurazioni dell'host virtuale per evitare di decodificare le barre codificate che potrebbero causare problemi per gli URL. Ad esempio, quando recuperi prodotti con una barra nello SKU tramite l’API, non desideri convertirli. Il blocco campione non è completo e sono necessarie altre direttive.

    code language-conf
    <VirtualHost *:443>
      # Allow encoded slashes
      AllowEncodedSlashes NoDecode
    </VirtualHost>
    

Apache riscrive e htaccess

In questo argomento viene illustrato come abilitare le riscritture di Apache 2.4 e specificare un'impostazione per il file di configurazione distribuito, .htaccess.

Adobe Commerce utilizza le riscritture del server e .htaccess per fornire istruzioni a livello di directory per Apache. Le seguenti istruzioni sono incluse anche in tutte le altre sezioni di questo argomento.

Utilizzare questa sezione per abilitare le riscritture di Apache 2.4 e specificare un'impostazione per il file di configurazione distribuito, .htaccess

Adobe Commerce utilizza le riscritture del server e .htaccess per fornire istruzioni a livello di directory per Apache.

NOTE
Se non si attivano queste impostazioni, in genere non vengono visualizzati stili nella vetrina o nell’amministratore.
  1. Abilita il modulo di riscrittura Apache:

    code language-bash
    a2enmod rewrite
    
  2. Per abilitare l'applicazione all'utilizzo del file di configurazione .htaccess distribuito, vedere le linee guida nella documentazione di Apache 2.4.

    note tip
    TIP
    In Apache 2.4, il file di configurazione del sito predefinito del server è /etc/apache2/sites-available/000-default.conf.

    Ad esempio, è possibile aggiungere quanto segue alla fine di 000-default.conf:

    code language-terminal
    <Directory "/var/www/html">
        AllowOverride All
    </Directory>
    
    note note
    NOTE
    A volte, potrebbero essere necessari parametri aggiuntivi. Per ulteriori informazioni, consulta la documentazione di Apache 2.4.
  3. Se hai modificato le impostazioni di Apache, riavvia Apache:

    code language-bash
    service apache2 restart
    
    note note
    NOTE
    • Se hai eseguito l'aggiornamento da una versione precedente di Apache, cerca prima <Directory "/var/www/html"> o <Directory "/var/www"> in 000-default.conf.
    • È necessario modificare il valore di AllowOverride nella direttiva per la directory in cui si prevede di installare il software Adobe Commerce. Ad esempio, per eseguire l'installazione nella directory principale dei documenti del server Web, modificare la direttiva in <Directory /var/www>.
NOTE
Se non si attivano queste impostazioni, in genere gli stili non vengono visualizzati nella vetrina o in Amministrazione.

Moduli richiesti Apache

Adobe Commerce richiede l’installazione dei seguenti moduli Apache:

Verifica la versione di Apache

Per verificare la versione di Apache in esecuzione, immetti:

apache2 -v

Il risultato è simile al seguente:

Server version: Apache/2.4.04 (Ubuntu)
Server built: Jul 22 2020 14:35:32

Installazione o aggiornamento di Apache su Ubuntu

Le sezioni seguenti spiegano come installare o aggiornare Apache:

  • Installare Apache
  • Effettua l’aggiornamento ad Apache 2.4 su Ubuntu per utilizzare PHP 7.4.

Installazione di Apache su Ubuntu

Per installare la versione predefinita di Apache:

  1. Installare Apache

    code language-bash
    apt-get -y install apache2
    
  2. Verificare l'installazione.

    code language-bash
    apache2 -v
    

    Il risultato è simile al seguente:

    code language-terminal
    Server version: Apache/2.4.18 (Ubuntu)
    Server built: 2020-04-15T18:00:57
    
  3. Abilita riscritture e .htaccess.

Aggiornamento di Apache su Ubuntu

Per effettuare l’aggiornamento ad Apache 2.4:

  1. Aggiungi l'archivio ppa:ondrej, che ha Apache 2.4:

    code language-bash
    apt-get -y update
    
    code language-bash
    apt-add-repository ppa:ondrej/apache2
    
    code language-bash
    apt-get -y update
    
  2. Installare Apache 2.4:

    code language-bash
    apt-get install -y apache2
    
    note note
    NOTE
    Se il comando 'apt-get install' non riesce a causa di dipendenze non soddisfatte, consultare una risorsa come https://askubuntu.com/.
  3. Verificare l'installazione.

    code language-bash
    apache2 -v
    

    Dovrebbero essere visualizzati messaggi simili ai seguenti:

    code language-terminal
    Server version: Apache/2.4.10 (Ubuntu)
    Server built: Jul 22 2020 22:46:25
    
  4. Abilita riscritture e .htaccess.

Installazione di Apache su CentOS

Adobe Commerce richiede la riscrittura del server Apache. È inoltre necessario specificare il tipo di direttive che è possibile utilizzare in .htaccess, utilizzate dall'applicazione per specificare le regole di riscrittura.

L'installazione e la configurazione di Apache sono fondamentalmente tre passaggi: installare il software, abilitare le riscritture e specificare .htaccess direttive.

Installazione di Apache

  1. Se non lo hai già fatto, installa Apache 2.4.

    code language-bash
    yum -y install httpd
    
  2. Verificare l'installazione:

    code language-bash
    httpd -v
    

    Vengono visualizzati messaggi simili al seguente per confermare che l’installazione è andata a buon fine:

    code language-terminal
    Server version: Apache/2.4.40 (Unix)
    Server built: Oct 16 2020 14:48:21
    
  3. Procedi alla sezione successiva.

    note note
    NOTE
    Anche se Apache 2.4 è fornito per impostazione predefinita con CentOS, consulta la sezione seguente per configurarlo.

Abilita riscritture e .htaccess per CentOS

  1. Apri il file /etc/httpd/conf/httpd.conf per la modifica:

    code language-bash
    vim /etc/httpd/conf/httpd.conf`
    
  2. Individua il blocco che inizia con:

    code language-conf
    <Directory "/var/www/html">
    
  3. Modificare il valore di AllowOverride in All.

    Ad esempio:

    code language-conf
    <Directory "/var/www/">
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      Allow from all
    </Directory>
    
    note note
    NOTE
    I valori precedenti per Order potrebbero non funzionare in tutti i casi. Per ulteriori informazioni, consulta la documentazione di Apache (2.4).
  4. Salvate il file e uscite dall'editor di testo.

  5. Per applicare le impostazioni Apache, riavvia Apache.

    code language-bash
    service apache2 restart
    
NOTE
Se non si attivano queste impostazioni, in genere non vengono visualizzati stili nella vetrina o nell’amministratore.

Abilita riscritture e .htaccess per Ubuntu

  1. Apri il file /etc/apache2/sites-available/default per la modifica:

    code language-bash
    vim /etc/apache2/sites-available/default
    
  2. Individua il blocco che inizia con:

    <Directory "/var/www/html">

  3. Modificare il valore di AllowOverride in All.

    Ad esempio:

    code language-conf
    <Directory "/var/www/html">
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      Allow from all
    </Directory>
    
  4. Salvate il file e uscite dall'editor di testo.

  5. Configurare Apache per l'utilizzo del modulo mod_rewrite:

    code language-bash
    cd /etc/apache2/mods-enabled
    
    code language-bash
    ln -s ../mods-available/rewrite.load
    
  6. Riavvia Apache per applicare le modifiche:

    code language-bash
    service apache2 restart
    

Risoluzione degli errori 403 (non consentito)

Se rilevi 403 errori non consentiti durante il tentativo di accesso al sito, puoi aggiornare la configurazione Apache o l’host virtuale per abilitare i visitatori al sito:

Risoluzione di errori 403 non consentiti per Apache 2.4

Per consentire ai visitatori del sito Web di accedere al sito, utilizzare una delle direttive obbligatorie.

Ad esempio:

<Directory "/var/www/">
  Options Indexes FollowSymLinks MultiViews
  AllowOverride All
  Order allow,deny
  Require all granted
</Directory>
NOTE
I valori precedenti per Order potrebbero non funzionare in tutti i casi. Per ulteriori informazioni, consulta la documentazione di Apache.
recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995