XAMPP 的多个虚拟主机不工作

Multiple VirtualHosts For XAMPP Not Working

好吧,我已经束手无策了。在一周的大部分时间里,我一直在努力解决这个问题 运行,但我不明白为什么它不起作用。

背景

我有两个 wordpress 站点,一个是开发站点,一个是生产站点。我希望能够在我的本地机器上查看它们。但是,我看到的是,当我输入 local.www.mysite.org 或 local.dev.mysite.org 时,会显示 none 图像。在检查链接时,它们都指向 localhost/image.jpg。我安装了 XAMPP 并且运行良好。这些站点指向正确的数据库,其中包含数据。如果我不使用虚拟主机,该网站将完全正常。

这是我的主机文件中的内容:

主机

127.0.0.1 localhost
127.0.0.1 local.www.mysite.org
127.0.0.1 local.dev.mysite.org

httpd-vhosts.conf

<VirtualHost *:80>
  DocumentRoot "D:/xampp/htdocs"
  ServerName localhost
</VirtualHost>

<VirtualHost *:80>
  DocumentRoot "C:/sites/www.mysite.org"
  ServerName local.www.mysite.org
  ServerAlias local.www.mysite.org
  <Directory "C:/sites/www.mysite.org">
    AllowOverride All
    Require all Granted
  </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "C:/sites/www.mysite.org"
    ServerName local.www.mysite.org
    ServerAlias local.www.mysite.org
  <Directory "C:/sites/www.mysite.org">
    AllowOverride All
    Require all Granted
  </Directory>
</VirtualHost>

问题

是不是我写错了什么?遗漏了什么?真的不知道我哪里出了问题。

谢谢, 贾斯汀

好吧,终于想通了。这是我的分步指南:

1) 打开 C:\xampp\apache\conf\extra\httpd-vhosts.conf,或者你的 httpd-vhosts.conf 文件所在的任何地方。首先在评论下方输入:

<VirtualHost *:80>
    DocumentRoot "C:/xampp/htdocs"
    ServerName localhost
</VirtualHost>

2) 接下来输入您希望在本地托管的站点。例如:

<VirtualHost *:80>
  DocumentRoot "C:/sites/dev.mysite.org"
  ServerName local.dev.mysite.org
  ServerAlias local.dev.mysite.org
  <Directory "C:/sites/dev.mysite.org">
    AllowOverride All
    Require all Granted
  </Directory>
</VirtualHost>

<VirtualHost *:80>
  DocumentRoot "C:/sites/www.mysite.org"
  ServerName local.www.mysite.org
  ServerAlias local.www.mysite.org
  <Directory "C:/sites/www.mysite.org">
    AllowOverride All
    Require all Granted
  </Directory>
</VirtualHost>

3) 以管理员身份打开记事本或类似的文本编辑器,然后在该文本编辑器中打开 C:\Windows\System32\drivers\etc\hosts

4) 添加 localhost 条目(如果还没有),然后将 ServerAliases 映射到本地 ip 地址,如下所示:

127.0.0.1 localhost
127.0.0.1 local.www.mysite.org
127.0.0.1 local.dev.mysite.org

5) 最后,登录到您的每个本地 Wordpress 实例并转到设置 > 常规并将 WordPress 地址 (URL) 和站点地址 (URL) 更改为它们各自的 ServerAliases .