Возникли проблемы с несколькими хостами на Apache Snow Leopard - PullRequest
0 голосов
/ 11 марта 2011

Я использую Apache на своем компьютере Mac OS X (Snow Leopard). Я хочу иметь возможность настроить несколько имен хостов, чтобы я мог разрабатывать и тестировать несколько сайтов одновременно, но я не могу заставить это работать.

Вот что я пробовал:

В моем файле etc / hosts я установил следующие записи:

127.0.0.1    testsite1.localdev.com
127.0.0.1    testsite2.localdev.com

Затем в apache2 / httpd.conf я добавил следующие записи:

<VirtualHost *:80>
   DocumentRoot /Library/WebServer/Documents/www/development/testsite1
   ServerName testsite1.localdev.com
   <Directory "/Library/WebServer/Documents/www/development/testsite1">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

<VirtualHost *:80>
   DocumentRoot /Library/WebServer/Documents/www/development/testsite2
   ServerName testsite2.localdev.com
   <Directory "/Library/WebServer/Documents/www/development/testsite2">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

Но случается так, что оба имени хоста соответствуют первому из перечисленных в файле httpd.conf - в данном случае testite1. Если я поменяю их позиции, то они оба перейдут на тестовый сайт2.

Я также пытался изменить область с надписью *: 80 и заменить ее на конкретные имена хостов для каждого сайта, но это не имеет никакого эффекта.

Я обязательно перезагружаю apache после каждого изменения.

Спасибо за любую помощь!

Gary

1 Ответ

1 голос
/ 27 мая 2011
  • в /etc/apache2/httpd.conf раскомментируйте файл vhost, например:

    # Virtual hosts
    Include /private/etc/apache2/extra/httpd-vhosts.conf
    
  • в /private/etc/apache2/extra/httpd-vhosts.conf use ...

    #
    # Use name-based virtual hosting.
    #
    NameVirtualHost *:80
    
    <VirtualHost *:80>
        DocumentRoot "/Library/WebServer/Documents"
        ServerName localhost
    </VirtualHost>
    
    # local test site
    <VirtualHost *:80> 
      <Directory /Users/<youruser>/Sites/test>
        AllowOverride All 
      </Directory> 
      DocumentRoot "/Users/<youruser>/Sites/test"
      ServerName test.local
    </VirtualHost>
    
  • Убедитесь, что ваши папки и Сайты имеют разрешения 755

и убедитесь, что вы добавляете в файл / etc / hosts ...

# test
127.0.0.1   test.local
...