Несколько виртуальных хостов - этот сайт недоступен Vagrant/Virtualbox
У меня проблема с настройкой нескольких виртуальных доменов. Перепробовал так много решений, ничего не получалось. Я просто что-то упустил, но понятия не имею, что. Это было неприятное путешествие, мягко говоря. Я установил 2 виртуальных блока: один для среды Laravel и один для среды Magento. У них обоих одна и та же проблема, домен не работает. Вот для magento:
- Папка: magento
- Виртуальный домен: magento.box
- magento.conf
- ip: 192.168.10.10
Когда я вхожу в браузере 192.168.10.10, он работает нормально, но если я вхожу magento.box
Говорится:
This site can’t be reached
magento.box’s server DNS address could not be found.
Для Laravel это то же самое.
Виртуальная коробка Magento
provision-ubuntu-15.10.sh:
#!/usr/bin/env bash
# Ubuntu 15.10 (GNU/Linux 4.2.0-34-generic x86_64) / ubuntu/wily64
# Update Ubuntu
# apt-get update
# Apache
echo "----- Provision: Installing apache..."
# apt-get install -y apache2 apache2-utils
echo "ServerName localhost" > "/etc/apache2/conf-available/fqdn.conf"
a2enconf fqdn
a2enmod rewrite
a2dissite 000-default.conf
# Folders
echo "----- Provision: Setup /var/www to point to /vagrant ..."
rm -rf /var/www
ln -fs /vagrant /var/www
# Apache / Virtual Host Setup
echo "----- Provision: Install Host File..."
cp /vagrant/vm_provision/hostfile /etc/apache2/sites-available/magento.conf
a2ensite magento.conf
# Cleanup
apt-get -y autoremove
# Restart Apache
echo "----- Provision: Restarting Apache..."
service apache2 restart
Vagrantfile
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/wily64"
config.vm.provision :shell, :path => "vm_provision/provision-ubuntu-15.10.sh"
config.vm.network "private_network", ip: "192.168.10.10",
owner:"vagrant",
group: "www-data",
mount_options:["dmode=770, fmode=660"]
# VirtualBox specific settings
config.vm.provider "virtualbox" do |vb|
vb.gui = false
vb.memory = "2048"
vb.cpus = 1
end
apache my.conf
<VirtualHost *:80>
ServerName www.magento.box
DocumentRoot /var/www/magento
# Custom log file locations
LogLevel warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# Allow overrides in .htaccess file
<Directory /var/www/>
Options FollowSymLinks
AllowOverride All
</Directory>
</VirtualHost>
В файле hosts:
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
127.0.0.1 localhost
127.0.0.1 www.magento.box
1 ответ
Чтобы иметь возможность войти magento.box
или любой другой ЛОКАЛЬНЫЙ домен (например, недоступный во внешнем Интернете), вам нужно изменить файл "hosts" на машине, на которой запущен браузер. В этом случае ваш хост (не внутри вашего бродячего компьютера). Процесс меняется в зависимости от того, используете ли вы Windows/OSX/Linux/ и т. Д., Но вот краткий обзор из Википедии.
Три, которые вам, вероятно, небезразличны:
Windows
%SystemRoot%\System32\drivers\etc\hosts
OSX
/etc/hosts
Linux
/etc/hosts
В этом файле вам нужно будет добавить следующую строку, чтобы ваша ОС знала, что magento.box
значит посмотреть на 192.168.10.10
:
192.168.10.10 magento.box
Обратите внимание, что вам может потребоваться перезагрузка, чтобы это вступило в силу. Также обратите внимание, что вам понадобятся права администратора /sudo для редактирования этого файла.