Я бегу Vagrant на моем Mac. У меня есть коробка CentOS 6.4, работающая с провайдером Virtualbox и марионеткой (не важно в этом контексте). Это основной Vagrantfile, чтобы показать мою проблему:
Vagrant.configure("2") do |config|
# centos box information
config.vm.box = "nrel/CentOS-6.5-x86_64"
config.vm.hostname = "devbox.loc"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "private_network", ip: "192.168.10.187"
config.vm.network "public_network"
end
У меня есть несколько настроек vhosts, к которым я обращаюсь по таким URL-адресам, как devsite.loc и othersite.loc, изменив файл hosts на моем Mac с IP-адресом частной сети. Все это работает, как и ожидалось, и я могу получить доступ к каждому из этих Vhosts по их адресам, увидев правильный сайт.
Основной файл vhost выглядит так:
<VirtualHost *:80>
DocumentRoot /home/devsite/public_html
ServerName devsite.loc
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /home/othersite/public_html
ServerName othersite.loc
</VirtualHost>
Тем не менее, если я попытаюсь запустить vagrant share
сбой с этой ошибкой:
default: Local machine address: 192.168.10.187
/opt/vagrant/embedded/lib/ruby/2.0.0/net/http.rb:878:in `initialize ': getaddrinfo: имя узла или имя сервера не предоставлены или неизвестны (SocketError)
Если я удаляю файл vhosts, тогда работает vagrant share, разделяющая страницу Apache по умолчанию. Что-то в vagrant share
явно не нравится в моем файле vhosts, но я понятия не имею, что это может быть.
Я использую последние версии Vagrant и Virtualbox.