Я создаю платформу для веб-разработки, которая позволяет максимально упростить написание и тестирование всего кода на моей локальной машине и синхронизировать его с моим веб-сервером. Я установил несколько виртуальных хостов, чтобы я мог получить доступ к своим проектам, набрав в качестве URL "project" вместо "localhost/project".
Я также хочу настроить это так, чтобы я мог получить доступ к своим проектам из любой сети. Я зарегистрировался на DYNDNS URL, который указывает на IP-адрес моего компьютера.
До установки виртуальных хостов это отлично работало из любого места. Теперь, когда я пытаюсь получить доступ к своим проектам, введя свой DYNDNS URL, я получаю сообщение об ошибке 403 Forbidden: "У вас нет разрешения на доступ к / на этом сервере."
Чтобы настроить виртуальные хосты, я отредактировал два файла - hosts в папке system32/drivers/etc и httpd-vhosts.conf в папке Apache моей установки WAMP.
В файле hosts я просто добавил имя сервера, которое должно ассоциироваться с 127.0.0.1. Я добавил следующее в файл http-vhosts.conf:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www/ladybug"
ServerName ladybug
ErrorLog "logs/your_own-error.log"
CustomLog "logs/your_own-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www"
ServerName localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
</VirtualHost>
Есть идеи, почему я не могу получить доступ к своим проектам, набрав URL моего DYNDNS? Также, возможно ли настроить виртуальные хосты так, чтобы при вводе http://projects со случайного компьютера вне моей сети, я получал доступ к url.dyndns.info/projects (он же мои проекты WAMP на моем домашнем компьютере)?
Помощь будет очень признательна, спасибо!
Ваше имя сервера должно будет к FQDN (Полностью определенное Доменное имя) работать внешне.
Пример конфигурации:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www"
ServerName url.dyndns.info
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
</VirtualHost>
Необходимо будет также открыть порт 80 через маршрутизатор и передать его внутреннему IP-адресу сервера.
Вы не сможете использовать просто http://projects для соединения с сервером, если Вы не настроите сервер DNS и использование это.
Поскольку ffreedon_is_chaos указывает, что необходимо использовать FQDN для получения до сервиса снаружи.
В дополнение к ServerName можно также добавить Псевдоним сервера, который позволит Вам получать доступ к домену с другими именами, что означает, что Вы все еще смогли бы использовать не FQDN на внутренней части. Например.
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "c:/wamp/www/ladybug"
ServerName ladybug.something.com
ServerAlias ladybug www.ladybug.something.com
ErrorLog "logs/your_own-error.log"
CustomLog "logs/your_own-access.log" common
</VirtualHost>