Возможный дубликат:
Могу ли я указать порт в записи в моем / etc / hosts в OS X?
У меня NGINX работает на порту 80, а APACHE - на порту 8080 (Listen 8080).
На Apache у меня есть несколько виртуальных хостов через порт 8080.
Раньше (когда у меня был apache, работающий на 80-м порту) у меня было сопоставление domain-> ip в файле / etc / hosts:
127.0.0.1 my-domain.dev
Но теперь, когда мне также нужно указать порт, как мне это сделать?
Я использую Mac Os 10.7 (Lion), и мой VirtualHost выглядит так:
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerName localhost
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
<VirtualHost *:8080>
ServerName my-domain.dev
DocumentRoot "/path/to/my/deploy/folder"
<Directory "/path/to/my/deploy/folder">
Order allow,deny
Allow from all
AllowOverride All
</Directory>
</VirtualHost>
(...)
Вы не можете. / etc / hosts работает аналогично DNS и вообще не обрабатывает порты. Он просто преобразует имя в IP-адрес. Вам нужно будет поставить: 8080 в конце адреса.
Вы не можете записать порт в хостах, и со старыми настройками в хостах измененный порт будет доступен, вам просто нужно добавить: 8080 в URL.
Если вы хотите оставить сервер на порте 8080, но сделать этот порт по умолчанию для http вместо 80 (чтобы использовать URL-адреса старого стиля), вам необходимо добавить записи SRV для определения зоны (и иметь запущенный DNS-сервер, даже локальный, с вашими доменами, определенными на этом сервере)
Как говорили другие, вы не можете использовать файл hosts для определения порта, который прослушивает Apache. Причина, по которой вам не нужно было указывать порт, когда Apache прослушивал порт 80, заключается в том, что порт 80 является портом по умолчанию для протокола http. Если вы не хотите указывать номер порта в своих URL-адресах, рассмотрите возможность настройки nginx на обратный прокси для сайтов apache.