Конфигурация Xampp Virtualhost не работает - PullRequest
0 голосов
/ 26 июня 2018

У меня есть следующая конфигурация Virtualhost в httlp-vhosts.conf:

Имя_сервера rest.budgettracker.locDocumentRoot "C: / xampp / htdocs / Budget-Develop / Budget-Develop / API / Public"ErrorLog "logs / rest.budgettracker.loc-error.log"CustomLog "logs / rest.budgettracker.loc-access.log" общий

Имя_сервера dev.budgettracker.locDocumentRoot "C: / xampp / htdocs / бюджет-разработка / бюджет-разработка"ErrorLog "logs / budgettracker.loc-error.log"CustomLog "logs / budgettracker.loc-access.log" общий

Когда я ввожу dev.budgettrackerpro.com в браузере, он переходит в контейнер виртуального хоста rest.budgettrackerpro.loc.

Если я удаляю контейнер Virtualhost для запроса на отдых, который он направляетправильно, чтобы правильный HTML / Javascript код.Очевидно, мне нужен остальной вызов, чтобы он работал правильно.Я исследовал это, пока я не посинел, что я делаю не так?Пожалуйста, помогите

1 Ответ

0 голосов
/ 27 июня 2018

Вы запрашиваете dev.budgettrackerpro. com .Ваша конфигурация для dev.budgettrackerpro. loc .

Что происходит:

  • Apache видит, что ваш запрос находится на порте 80 ( http://...)
  • Он проверяет, какие VirtualHost настроены на прием трафика с порта 80.
  • Здесь он находит 2. 1) rest.budgettracker.loc 2)dev.budgettracker.loc
  • Поскольку указанный вами домен ( .com ) не соответствует ни 1), ни 2), Apache предполагает, что VirtualHost, который он должен использовать, является первым, который он использует.найдено.
  • Apache при поиске нескольких виртуальных хостов или при поиске ни одного совпадающего использует первый в файле (сверху вниз).

Чтобы решить эту проблему:

  • Запрос 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.com.Вы можете иметь несколько ServerAlias в VirtualHost, но только один ServerName.

...