Несколько участков усадьбы Laravel выбирают, какой из них является локально доступным - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть несколько участков в усадьбе Ларавелла. Теперь я хочу получить доступ к специальному сайту через ip в моей локальной сети. Но я всегда получаю сайт, который мне не нужен ...

homestead.yaml

sites:
- map: mdb.local
  to: /home/vagrant/code/mdb/public
  type: "apache"

- map: zz.tested
  to: /home/vagrant/code/abc/public
  type: "apache"

- map: 192.168.10.10
  to: /home/vagrant/code/mdb/public

И мои хозяева

192.168.10.10 mdb.local
192.168.10.10 zz.tested

Я могу получить доступ к обоим на своем компьютере с доменом, однако я всегда получаю abc через ip в локальной сети. Что мне нужно изменить, чтобы получить mdb на мобильном телефоне, а abc доступен только на моем компьютере?

Я прочитал это StackOverflow Вопрос, но - вы можете увидеть мою реализацию этого решения - это не помогает решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018

Это можно сделать, настроив второе приложение / сайт для работы на порте 81, а не на порту 80, а затем настроив переадресацию портов для отправки с 8001 или 8100 на 81.

sites:
- map: mdb.local
  to: /home/vagrant/code/mdb/public
  type: "apache"
  port: 81

- map: zz.tested
  to: /home/vagrant/code/abc/public
  type: "apache"

ports:
  - send: 8100
    to: 81

При этом вы сможете получить доступ к приложению mdb через правильный порт. Из Homestead это будет 81. Снаружи это будет 8100. Порт нужен независимо от того, используете ли вы IP-адрес хост-машины (например, http://192.168.1.5:8100) или запись хоста (например, http://mdb.local:8100).

0 голосов
/ 16 ноября 2018

Apache всегда берет первый сайт в алфавитном порядке и возвращает его в качестве хоста по умолчанию. Что вы можете сделать, так это создать хост с именем 000default или аналогичный, который будет возвращен, когда имя хоста не будет.

...