Я новичок в Vagrant и просто настраиваю некоторые виртуальные машины. Независимо от того, как я настрою виртуальные машины, я думаю, что неправильно понимаю ключевую концепцию.
Я создаю Vagrantfiles с помощью PuPHPet, инструмента, который помогает быстро приступить к работе.
Одной из частей конфигурации является установка правильных каталогов.
Существует один параметр, который называется Box Sync Folder Source и имеет значение /.
. Другой параметр называется Box Sync Folder Target и имеет значение /var/www
. Для меня это означает, что все в той же папке, что и Vagrantfile, будет синхронизировано с /var/www
.
Затем можно установить Корень документа. Там я ввел /var/www/public
.
После запуска vagrant up
я получаю следующую структуру каталогов:
├── default
├── html
└── index.html [Apache "It works!"]
├── public
├── puphpet
└── [puphpet files]
├── Vagrantfile
При доступе к IP-адресу или имени хоста с помощью веб-браузера я получаю «404 File Not Found».
Мне кажется, это имеет смысл, поскольку /public — это корень документа, а не /html, но зачем вообще существует папка /html? Нужно ли мне установить корневой каталог документа в /html, чтобы сервер работал правильно?
Я помню, как несколько лет назад наблюдал за тем, как кто-то настраивал сервер (конечно, без PuPHPet и Vagrant), и я не могу вспомнить ни одного каталога /html. Также я считаю, что "Это работает!" HTML-файл предназначен для обеспечения визуальной обратной связи о том, что все запущено и работает. Почему этот файл помещен в папку, к которой по умолчанию нет доступа?