Я запускаю веб-сервер Apache2 в локальной сети.
Я могу получить к нему доступ через http: // myserver / . У меня есть несколько веб-приложений в их папках на сервере, поэтому, когда я хочу получить доступ к app1 или app2, я помещаю http: // myserver / app1 или http: // myserver / app2
Я хочу настроить свой сервер таким образом, чтобы я мог получить доступ к таким приложениям, как http: //app1.myserver или что-нибудь в этом роде.
Готов поспорить, для этого мне нужно настроить локальный DNS-сервер или повозиться с чем-то вроде мод-перезаписи. Какой подход вы бы выбрали? У меня нет опыта ни с DNS-сервером, ни с мод-перезаписью.
Спасибо за ответы.
DNS полезен для распространения имен по сети. Итак, да, если вы хотите преобразовать app1.myserver в <192.168.1.1>, вам понадобится DNS-сервер. Но, если вы единственный, кто использует это (или для целей тестирования), вы можете просто изменить файлы hosts на своем локальном компьютере и добавить запись для
192.168.1.1 app1.myserver
Теперь, если у вас есть 3 приложения: app1.myserver, app2.myserver и app3.myserver. Когда вы подключаетесь к одному из них, используя http: //app1.myserver, ваш браузер отправляет HTTP-запрос, содержащий заголовок "Host". Этот заголовок Host имеет значение Host: app1.myserver.
Apache получает ваш HTTP-запрос, просматривает заголовок Host и направляет запрос в хорошее приложение. Это называется виртуальным хостингом, и это то, что вы делаете при создании виртуальных хостов Apache.
Итак, вам не нужны mod_rewrite, базовый сервер Apache2 и локальный файл Host (или DNS), и все готово.
Возможное решение:
Как вы описываете сценарий (местная разработка дома), самый быстрый способ - настроить вручную DNS-запись в твоей машине. Таким образом вы избегаете настройки DNS-сервера. (Зачем тратить 2 часа на настройку DNS, если вы можете получить его за 2 минуты ...)
Вам нужно вручную добавить запись в файлы Hosts на всех машинах в вашей сети (я думаю, это ваш сервер и ваш компьютер). Если ваш сервер 192.168.0.10, а ваш локальный компьютер 192.168.0.9
Вы должны добавить запись на обеих машинах, например:
Таким образом, вы можете получить доступ к своим приложениям как http: //app1.myserver или http: //app2.myserver
Как это сделать?
Здесь у вас есть дополнительная информация для разных ОС: http://en.wikipedia.org/wiki/Hosts_%28file%29