Назад | Перейти на главную страницу

несколько портов apache vhosts на osx 10.6 не разрешаются должным образом

У меня есть несколько локальных версий веб-сайтов разработки на моем локальном Mac, и я хочу предоставить к ним доступ из браузера через vhosts, а также время от времени использовать живые (веб-версии).

Я читал много примеров того, как люди делали похожие вещи, меняя URL-адрес и заставляя apache прослушивать уникальный URL-адрес для обслуживания из локального местоположения. Я всегда делал это с помощью тем же URL-адрес, но другой порт, и хотя он без проблем работает в Windows, я не могу заставить его работать на Mac.

(Допустим) у меня есть два сайта:

  1. amazingwebsite.com
  2. facebookiller.org

Я хочу получить доступ к локальным версиям, используя тот же URL-адрес, включив прокси-сервер браузера (одним щелчком мыши), который я установил на 8080. apache установлен на Listen *:8080 в httpd.conf.

В httpd-vhosts.conf (который является загружается) у меня есть:

NameVirtualHost *:8080

<VirtualHost *:8080>
    ServerAdmin webmaster@amazingwebsite.com
    ServerName amazingwebsite.com
    ServerAlias www.amazingwebsite.com
    DocumentRoot "/Users/username/Development/Projects/amazingwebsite"

    <Directory "/Users/username/Development/Projects/amazingwebsite/">
        Options Includes Indexes Multiviews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

</VirtualHost>

Виртуальный хост facebookkiller.org в основном такой же - просто другое месторасположение.

Мой /private/etc/hosts теперь установлено на:

##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1   localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0 localhost

127.0.0.1   amazingwebsite.com
127.0.0.1   facebookkiller.org

и после перезапуска apache (включение / выключение веб-обмена), apachectl -S отчеты:

VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:8080                 is a NameVirtualHost
         default server amazingwebsite.com (/private/etc/apache2/other/httpd-vhosts.conf:4)
         port 8080 namevhost amazingwebsite.com (/private/etc/apache2/other/httpd-vhosts.conf:4)
         port 8080 namevhost facebookkiller.org (/private/etc/apache2/other/httpd-vhosts.conf:19)
Syntax OK

что мне кажется нормальным.

Поведение?:

Итак, мой ServerAlias ​​не работает, или что-то не так с моим файлом hosts - или и тем, и другим!

Я потратил на это целую вечность и действительно мог бы с некоторой помощью - спасибо ..

Vhosts работают, вы неправильно написали свой локальный / etc / hosts. Дело в том, что ваш тайм-аут-потом-работа вызван «www». поиск, скорее всего, приведет к тому, что реальный указатель DNS CNAME вернется к не-www. версия.

127.0.0.1   localhost google.com www.google.com amazon.com www.amazon.com

Вот как вы используете файл hosts - один IP-адрес указан один раз, все псевдонимы в одной строке, и вы должны указать все необходимые поддомены, www. например который будет отправлять трафик на ваш локальный экземпляр Apache.