Configurare più siti web con Apache
Si presuppone che:
Se necessario, copia il file index.php
script del punto di ingresso per la vista del sito web o store e aggiungi quanto segue:
-
Stai lavorando su una macchina di sviluppo (laptop, macchina virtuale e così via)
Potrebbero essere necessarie attività aggiuntive per distribuire più siti web in un ambiente ospitato; per ulteriori informazioni, rivolgiti al provider di hosting.
Sono necessarie attività aggiuntive per configurare l’infrastruttura cloud di Adobe Commerce. Dopo aver completato le attività descritte in questo argomento, vedere Configurazione di più siti Web o store nel Guida di Commerce su infrastruttura cloud.
-
Si utilizza un host virtuale per sito Web; il file di configurazione host virtuale è
/etc/httpd/httpd.conf
Diverse versioni di Apache su diversi sistemi operativi configurano gli host virtuali in modo diverso. Consulta la Documentazione di Apache o un amministratore di rete se non si è sicuri della modalità di configurazione di un host virtuale.
-
Il software Commerce è installato in
/var/www/html/magento2
-
Sono disponibili due siti Web diversi da quello predefinito:
french.mysite.mg
con il codice del sito webfrench
e memorizza il codice di visualizzazionefr
german.mysite.mg
con il codice del sito webgerman
e memorizza il codice di visualizzazionede
Roadmap per la configurazione di più siti web con Apache
L'impostazione di più archivi consiste nelle seguenti attività:
- Configurare siti Web, store e visualizzazioni dello store in Admin.
- Crea un elemento Host virtuale Apache per sito web Commerce.
Passaggio 1: creare siti web, store e visualizzazioni dello store in Admin
Consulta Configurare più siti web, store e visualizzazioni dello store in Admin.
Passaggio 2: creare host virtuali Apache
Questa sezione illustra come impostare i valori per MAGE_RUN_TYPE
e MAGE_RUN_CODE
utilizzo della variabile server Apache SetEnvIf
in un host virtuale.
Per ulteriori informazioni su SetEnvIf
, vedi:
Per creare host virtuali Apache:
-
Come utente con
root
, aprire il file di configurazione host virtuale in un editor di testo.Ad esempio, apri
/etc/httpd/conf/httpd.conf
-
Individua la sezione che inizia con
<VirtualHost *:80>
. -
Crea i seguenti host virtuali dopo gli host virtuali esistenti:
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>
-
Salva le modifiche apportate a
httpd.conf
ed esci dall’editor di testo. -
Riavvia Apache:
- CentOS:
service httpd restart
- Ubuntu:
service apache2 restart
- CentOS:
Verifica il sito
A meno che il DNS non sia configurato per gli URL dei tuoi archivi, devi aggiungere una route statica all'host nel tuo hosts
file:
-
Individuazione del sistema operativo
hosts
file. -
Aggiungi la route statica nel formato:
code language-conf <ip-address> french.mysite.mg <ip-address> german.mysite.mg
-
Vai a uno dei seguenti URL nel browser:
code language-http http://mysite.mg/admin http://french.mysite.mg/frenchstoreview http://german.mysite.mg/germanstoreview
- Potrebbero essere necessarie attività aggiuntive per distribuire più siti web in un ambiente ospitato; per ulteriori informazioni, rivolgiti al provider di hosting.
- Sono necessarie attività aggiuntive per configurare l’infrastruttura cloud di Adobe Commerce; consulta Configurare più siti web o store Cloud nel Guida di Commerce su infrastruttura cloud.
Risoluzione dei problemi
- Se i siti francese e tedesco restituiscono 404 secondi ma l’amministratore carica, assicurati di aver completato Passaggio 6: aggiungi il codice dello store all’URL di base.
- Se tutti gli URL restituiscono il codice 404, assicurati di aver riavviato il server web.
- Se l'amministratore non funziona correttamente, verificare di aver configurato correttamente gli host virtuali.