Я установил виртуальные хосты на основе имен на моем сервере apache, OS X 10.11.6 (El-Capitan).Это на маршрутизаторе Wi-Fi (крайний аэропорт), который указывает звонки на мой сервер.Перед созданием виртуальных хостов любое устройство в моей сети может ввести localhost и просмотреть веб-сайт.
После создания виртуальных хостов другие устройства в моей сети могут по-прежнему вызывать localhost и получать доступ к корневому каталогу для этого сервера, но когдавызывая виртуальные хосты по имени, сервер не может быть подключен.
На сервере все работает отлично, как и ожидалось.Файл хостов обновляется на сервере, поэтому все вызовы хостов, виртуальных хостов и их псевдонимов на серверном компьютере возвращаются на 127.0.0.1
.
Я могу, на внешних устройствах в той же сети, разрешитьна локальный хост и предоставить расширение каталога для корней виртуального хоста.Но я бы хотел назвать их по имени сервера или псевдониму, если это возможно.В документации Apache четко указано, что это очевидная проблема DNS.Я не могу найти прямую документацию о том, как сделать правильные записи DNS.Я пытался немного разобраться с resolv.conf
, но я не думаю, что это правильный ответ, и то, что я пытался, похоже, не сработало, но это не значит, что что-то значит.
<VirtualHost *:80>
DocumentRoot "/path/to/root"
ServerName localhost // This is the main server
Redirect permanent / https://localhost/
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/path/to/root/example1.dev"
ServerName example1.dev
ServerAlias www.example1.dev
Redirect permanent / https://example1.dev/
</VirtualHost>
<virtualHost *:443>
DocumentRoot "/path/to/root"
ServerName localhost
SSLEngine on
SSLCertificateFile "/path/to/cert/server.crt"
SSLCertificateKeyFile "/path/to/key/server.key"
</VirtualHost>
<VirtualHost *:443>
DocumentRoot "/path/to/root/example1.dev"
ServerName example1.dev
ServerAlias www.example1.dev
SSLEngine on
SSLCertificateFile "/path/to/cert/example1.crt"
SSLCertificateKeyFile "/path/to/key/example1.key"
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/path/to/root/example2.dev"
ServerName example2.dev
ServerAlias www.example2.dev
</VirtualHost>
Итак, я хотел бы вызывать виртуальные хосты на внешних устройствах по имени сервера или псевдониму, но я не могу понять, как обновить DNS на OS X. Если у кого-то есть направление, на которое меня указывают, этобудет высоко ценится.