Xampp Virtualhost配置不起作用

时间:2018-06-26 02:38:07

标签: apache rest xampp cors virtualhost

我在httlp-vhosts.conf中具有以下Virtualhost配置:


ServerName rest.budgettracker.loc
DocumentRoot“ C:/ xampp / htdocs / budget-develop / budget-develop / api / public”
ErrorLog“ logs / rest.budgettracker.loc-error.log”
CustomLog“ logs / rest.budgettracker.loc-access.log”常见


ServerName dev.budgettracker.loc
DocumentRoot“ C:/ xampp / htdocs / budget-develop / budget-develop”
ErrorLog“ logs / budgettracker.loc-error.log”
CustomLog“ logs / budgettracker.loc-access.log”常见

当我在浏览器中输入dev.budgettrackerpro.com时,它将转到rest.budgettrackerpro.loc虚拟主机容器。

如果我删除其余请求的Virtualhost容器,它将正确地定向到正确的html / javascript代码。显然,我需要剩下的电话才能使其正常工作。我对此进行了研究,直到脸色发青,我做错了什么?请帮助

1 个答案:

答案 0 :(得分:0)

您要的是dev.budgettrackerpro。 com 。您的配置用于dev.budgettrackerpro。查找

会发生什么:

  • Apache看到您的请求在端口80(http://..上。)
  • 它检查哪些VirtualHost配置为从端口80接收流量。
  • 在这里找到2。1)rest.budgettracker.loc 2)dev.budgettracker.loc
  • 由于您询问的域( .com )与1)或2)都不匹配,因此Apache假定它应使用的VirtualHost是它找到的第一个。
  • Apache在找到多个VirtualHost或找不到不匹配的VirtualHost时使用文件中的第一个(从上到下)。

要解决此问题:

  • 请求http://dev.budgettracker.loc
  • 修改您的VirtualHost以接受流量形式.com,如下所示:

    <VirtualHost *:80>
        ServerName dev.budgettracker.loc
        ServerAlias dev.budgettracker.com
        DocumentRoot "C:/xampp/htdocs/budget-develop/budget-develop"
        ErrorLog "logs/budgettracker.loc-error.log"
        CustomLog "logs/budgettracker.loc-access.log" common
    </VirtualHost>
    

注意新行ServerAlias dev.budgettracker.comServerAlias中可以有多个VirtualHost,但只有一个ServerName