Бродячая доля с усадьбой Ларавеля
Я сталкиваюсь с проблемой, заставляя бродячую акцию работать вместе с бродячей коробкой Laravel. Мой файл homestead.yaml выглядит так:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: /Users/me/.ssh/id_rsa.pub
keys:
- /Users/me/.ssh/id_rsa
folders:
- map: /Users/me/Projects/laravel
to: /home/vagrant/laravel
sites:
- map: laravel.app
to: /home/vagrant/laravel/public
variables:
- key: APP_ENV
value: local
Когда я нажимаю http://laravel.app:8000/ - все работает отлично. Когда я запускаю vagrant share
сгенерированный URL возвращает ошибку No input file specified.
Я в тупике. Поиск в Google в течение нескольких часов не привел к решению. Я уверен, что это просто базовая конфигурация, и я не соединяю точки. Любые указатели будут оценены. Спасибо!
4 ответа
Есть решение без необходимости что-либо делать на вашей усадьбе.
Вы можете установить программу под названием ngrok, которая делает то же самое с vagrant share
но лучше работает с несколькими сайтами, которые использует Homestead. Вам нужно будет зарегистрировать учетную запись, но базовое использование бесплатное.
Бежать: ngrok http -host-header=rewrite your-local-site.app:80
(Где your-local-site.app - это то, что используется для директивы map в вашем Homestead.yaml
файл)
Тогда ваш сайт будет доступен по всему миру по URL, который дает вам ngrok.
Ответ @sanaco пропустил несколько шагов для меня. Это полная команда для создания общего ресурса (после входа в систему)
vagrant share --http 80 --name silly-sausage
По завершении команда выведет URL ресурса, который должен выглядеть следующим образом
http://silly-sausage.vagrantshare.com
После того, как общий ресурс закончился, вам нужно вставить ssh в бродячую коробку с
vagrant ssh
И беги
serve silly-sausage.vagrantshare.com ~/Code/project/path/public
Без http-флага vagrant назначает 443 для http, что заставляет nginx жаловаться на использование HTTPS-порта для HTTP-соединения.
Указав имя, вам нужно только выполнить команду подачи в первый раз.
Первым шагом является создание учетной записи для Vagrant Cloud, если вы еще этого не сделали.
Как только вы это сделаете, в вашем терминале (не вошли в систему Homestead) запустите vagrant login
и войдите с вашими данными.
Тогда беги vagrant global-status
чтобы найти идентификатор бродячей машины, на которой работает Homestead.
Бежать vagrant share 123a4
(где 123a4
это идентификатор машины) и ваша машина будет доступна всем!
Обратите внимание, что вам может потребоваться настроить конфигурацию Nginx для прослушивания сгенерированного для вас URL-адреса, чтобы он указывал на правильный сайт на компьютере.
Попробуйте эту команду в вашем домашнем каталоге: vagrant provision
Чтобы получить общий URL-адрес, используйте эту команду:vagrant share
Иногда это не влияет на окна. использованиеvagrant share --http 8000
8000
порт как homestead
использует переадресацию портов 8000 -> 80
Примечание. Для использования vagrant share у вас должен быть установлен ngrok.