Виртуальные хосты на основе имен Vagrant и Nginx

#php #nginx #vagrant

#php #nginx #vagrant

Вопрос:

Я полагаю, что я правильно настроил файл виртуального хоста nginx, однако я не могу перейти к этому URL-адресу на хост-компьютере. У меня есть небольшое ощущение, что я здесь что-то недопонимаю.

Вот ситуация. У меня есть Vagrantfile, который выполняет следующее:

  • Установка необходимых пакетов
  • Обновление композитора
  • Копирует файл виртуального хоста Nginx в Nginx
  • Перезапускает все соответствующие службы

Вот файл vhost:

 server {
    listen 80;
    server_name vagrant;
    root /usr/share/nginx/www;
    index index.html index.htm index.php;

    location / {
        try_files $uri /index.php;
    }

    location ~ .php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi_params;
    }
}
  

Я могу убедиться, что когда файл виртуального хоста вызывался просто vagrant , а имя сервера было установлено следующим server_name _; образом, при посещении отображалась страница localhost .

Поскольку я пытаюсь настроить Magento, который плохо работает с доменами localhost, я пытаюсь настроить для него виртуальный хост на основе имен в домене dev.magento.co.uk

Если я подключусь к установке vagrant по ssh, я могу убедиться, что dev.magento.co.uk файл находится в каталоге /etc/nginx/с поддержкой сайта, и его содержимое было скопировано правильно.

Чего мне не хватает?

Комментарии:

1. ваш хост Vagrant перенаправляет порт 80 на вашу виртуальную машину?

2. Вы являетесь владельцем Magento.co.uk домен? Our настроили ли вы DNS на хосте иным образом?

3. @Thomas Я думаю, что Vagrant делает это стандартно. Однако я думаю, что мне нужно использовать порт 8080; dev.magento.co.uk: 8080 также не работает.

4. @Melvyn Это просто локальный виртуальный хост, а не опубликованный веб-пример. Установка Vagrant выполняется на моем локальном компьютере, а не на веб-сервере.

5. Запись «виртуальный хост» на веб-сервере не настраивает DNS для вас на хосте виртуальной машины. Подключайтесь по Ip с помощью низкоуровневых инструментов, таких как telnet или netcat. Затем запросите домашнюю страницу с правильным заголовком Host. Если это работает, вам действительно нужно настроить имя хоста на хосте виртуальной машины.