Бродячая доля с усадьбой Ларавеля

Я сталкиваюсь с проблемой, заставляя бродячую акцию работать вместе с бродячей коробкой 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.

Другие вопросы по тегам