使用Apache设置多个网站

我们假定:

如有必要,复制网站或商店视图的现有index.php入口点脚本,并将以下内容添加到该脚本中:

  • 您正在使用开发计算机(笔记本电脑、虚拟机等)

    在托管环境中部署多个网站可能需要执行其他任务;有关更多信息,请咨询您的托管提供商。

    在云基础架构上设置Adobe Commerce需要执行其他任务。 完成本主题中讨论的任务后,请参阅​ Commerce on Cloud Infrastructure指南 ​中的设置多个网站或商店

  • 每个网站使用一个虚拟主机;虚拟主机配置文件为/etc/httpd/httpd.conf

    不同操作系统上的不同版本Apache对虚拟主机的设置有所不同。 如果不确定如何设置虚拟主机,请参阅Apache文档或网络管理员。

  • Commerce软件安装在/var/www/html/magento2

  • 您拥有默认网站以外的两个网站:

    • 网站代码为french且商店视图代码为frfrench.mysite.mg
    • 网站代码为german且商店视图代码为degerman.mysite.mg

使用Apache设置多个网站的路线图

设置多个存储由以下任务组成:

步骤1:在“管理员”中创建网站、商店和存储视图

查看在Admin中设置多个网站、商店和商店视图。

步骤2:创建Apache虚拟主机

本节讨论如何在虚拟主机中使用Apache Server变量SetEnvIf设置MAGE_RUN_TYPEMAGE_RUN_CODE的值。

有关SetEnvIf的详细信息,请参阅:

要创建Apache虚拟主机

  1. 作为具有root权限的用户,在文本编辑器中打开虚拟主机配置文件。

    例如,打开/etc/httpd/conf/httpd.conf

  2. 找到以<VirtualHost *:80>开头的部分。

  3. 在任何现有虚拟主机之后创建以下虚拟主机:

    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>
    
  4. 将更改保存到httpd.conf并退出文本编辑器。

  5. 重新启动Apache:

    • CentOS: service httpd restart
    • Ubuntu: service apache2 restart

验证您的站点

除非您为商店的URL设置了DNS,否则必须在hosts文件中添加指向主机的静态路由:

  1. 找到操作系统hosts文件。

  2. 采用以下格式添加静态路由:

    code language-conf
    <ip-address> french.mysite.mg
    <ip-address> german.mysite.mg
    
  3. 在浏览器中转到以下URL之一:

    code language-http
    http://mysite.mg/admin
    http://french.mysite.mg/frenchstoreview
    http://german.mysite.mg/germanstoreview
    
INFO
  • 在托管环境中部署多个网站可能需要执行其他任务;有关更多信息,请咨询您的托管提供商。
  • 在云基础架构上设置Adobe Commerce需要执行其他任务;请参阅​_云基础架构上的Commerce指南_​中的设置多个云网站或商店

故障排除

  • 如果您的法语和德语网站返回404但您的管理员加载了,请确保您已完成步骤6:将商店代码添加到基本URL
  • 如果所有URL都返回404,请确保已重新启动Web服务器。
  • 如果管理员无法正常运行,请确保正确设置虚拟主机。
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c