IP-адрес локальной сети Laravel не работает
Im, используя Laravel Homestead 2.0 для моей виртуальной машины и пытаюсь обслуживать мои сайты по IP-адресу по умолчанию в файле YAML 192.168.10.10
Мой файл /etc/hosts выглядит следующим образом:
# Homestead
192.168.10.10 beta.dev
192.168.10.10 deploy.dev
Ответы
Ответ 1
У меня были те же проблемы несколько недель назад.
Во-первых:
убедитесь, что пути к папке верны, если это так, дважды проверьте его
Далее:
запускать усадьбу уничтожить и усадить до повторной инициализации VM
если все это не работает:
Проверьте, есть ли у вас какие-либо устройства дома, которые также могут быть на 192.168.10.10.
Если все это не работает, ваша проблема, вероятно, намного сложнее исправить, и я бы предложил сделать для нее проблему github.
Ответ 2
Эй, у меня была такая же проблема. В конечном итоге я начал работать, установив пакет устаревших сетевых инструментов:
sudo apt-get update
и
sudo apt-get install gnome-nettool
После этого,
homestead destroy
и
homestead up
Это позволило мне получить доступ к моим сайтам виртуальной машины из моего браузера локальной машины, используя "домены", указанные мной в файле hosts, - в вашем случае beta.dev и deploy.dev - без ссылки на localhost или порт 8000. Удачи, надеюсь, что это поможет.
Ответ 3
Это решение, которое я сделал для своей машины Windows 10:
Убедитесь, что вы добавили постоянный маршрут в свою бродячую коробку
В командной строке администратора введите
route -p добавить 192.168.10.0 маску 255.255.255.0 192.168.10.1
И убедитесь, что вы можете ping 192.168.10.10
Также проверьте, что IP-адрес, настроенный для виртуального узла, только для хоста - 192.168.10.1 с маской 255.255.255.0
Ответ 4
Установка сетевых инструментов на ubuntu исправила это для меня
$ sudo install net-tools
$ vagrant destroy
$ vagrant up
Ответ 5
У меня была такая же ситуация, но я сделал изменения.
Я изменил файл /etc/hosts с помощью этого IP 127.0.0.1
Ответ 6
У меня была аналогичная проблема вчера для Homestead 5. Оказалось, что причиной моей проблемы было то, что я запускал неправильный файл Vagrant.
Экземпляр должен дать ответ на ip-адрес: 192.168.10.10
Чтобы исправить проблему в моем случае, я должен был следовать этим инструкциям: http://laravel.com/docs/5.0/homestead
Повторить:
В терминальном запуске:
vagrant box add laravel/homestead
то
git clone https://github.com/laravel/homestead.git Homestead
то
cd ./Homestead
и запустите эту команду FROM INSIDE в новой папке "Homestead"
bash init.sh
затем запустите команды vagrant up
и vagrant provision
в этот Vagrantfile, который должен был быть создан внутри ./Homestead
Вот как выглядит результат команды vagrant provision
в моей системе:
vagrant provision
==> default: Running provisioner: file...
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-17xwlzk.sh
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-rncs6l.sh
==> default: nginx stop/waiting
==> default: nginx start/running, process 1751
==> default: php5-fpm stop/waiting
==> default: php5-fpm start/running, process 1766
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-e9qxwn.sh
==> default: Warning: Using a password on the command line interface can be insecure.
==> default: Warning: Using a password on the command line interface can be insecure.
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-14rlz2c.sh
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-16ethaq.sh
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Running provisioner: shell...
default: Running: inline script
==> default: php5-fpm stop/waiting
==> default: php5-fpm start/running, process 1861
==> default: Running provisioner: shell...
default: Running: inline script
==> default: You are already using composer version 92faf1c7a83a73794fb914a990be435e1df373ca.
==> default: Running provisioner: shell...
default: Running: /var/folders/q6/pgygb1ln4rg7_nvv0p8n1v300000gn/T/vagrant-shell20150714-94163-btuuhg.sh
Ответ 7
В моем случае проблема была решена, если vagrant up
установить гостевые дополнения:
~/Homestead (master|✔) $ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'laravel/homestead' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
default: Adapter 2: hostonly
[...]
GuestAdditions versions on your host (5.0.26) and guest (5.0.20) do not match.
[...]
Copy iso file /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso
mount: /dev/loop0 is write-protected, mounting read-only
Installing Virtualbox Guest Additions 5.0.26 - guest version is 5.0.20
Verifying archive integrity... All good.
Uncompressing VirtualBox 5.0.26 Guest Additions for Linux............
VirtualBox Guest Additions installer
Removing installed version 5.0.20 of VirtualBox Guest Additions...
Removing existing VirtualBox DKMS kernel modules ...done.
Removing existing VirtualBox non-DKMS kernel modules ...done.
Copying additional installer modules ...
Installing additional modules ...
Removing existing VirtualBox DKMS kernel modules ...done.
Removing existing VirtualBox non-DKMS kernel modules ...done.
Building the VirtualBox Guest Additions kernel modules ...done.
Doing non-kernel setup of the Guest Additions ...done.
You should restart your guest to make sure the new modules are actually used
После этого момента у меня появился новый интерфейс с ожидаемым IP-адресом:
enp0s8 Link encap:Ethernet HWaddr 08:00:27:e8:04:04
inet addr:192.168.8.10 Bcast:192.168.8.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fee8:404/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:996 (996.0 B)
Ответ 8
У меня возникла эта проблема на моей машине с Windows, и оказалось, что я случайно изменил папку "Карта" и "на". Когда я обнаружил, что папка не находится под ~/code/в сеансе бродяг ssh, было очевидно, что она не работает правильно, но двойная проверка путей ничего не принесла.
Вот правильный способ сопоставления раздела папки на вашей машине Windows:
folders:
- map: D:/Development/PHP/projects/
to: /home/vagrant/code
Ответ 9
У меня была именно эта проблема, и оказалось, что nginx не запускался из-за ошибки при загрузке сертификатов TLS. Команда vagrant up
не сообщает, что nginx не удалось запустить или что ни один из портов не удалось связать.
Чтобы диагностировать это, я сделал следующее:
$ nmap homestead.app
Starting Nmap 7.01 ( https://nmap.org ) at 2017-10-03 16:16 NZDT
Nmap scan report for homestead.app (192.168.10.10)
Host is up (0.00077s latency).
Not shown: 995 closed ports
PORT STATE SERVICE
22/tcp open ssh
1025/tcp open NFS-or-IIS
3306/tcp open mysql
5432/tcp open postgresql
В списке нет порта 80. Дважды проверьте порт 80.
$ nmap homestead.app -p 80
...
Host is up (0.00020s latency).
PORT STATE SERVICE
80/tcp closed http
Так что это конечно закрыто. Что говорят журналы гостя? vagrant ssh
и...
$ systemctl status nginx.service
...
Active: failed (Result: exit-code) since Tue 2017-10-03 03:06:12 UTC; 1min 30s ago
...
homestead systemd[1]: Starting A high performance web server and a reverse proxy server...
homestead nginx[1250]: nginx: [emerg] PEM_read_bio_X509_AUX("/etc/nginx/ssl/homestead.app.crt") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line:Expecting: TRUSTED CERTIFICA
homestead nginx[1250]: nginx: configuration file /etc/nginx/nginx.conf test failed
homestead systemd[1]: nginx.service: Control process exited, code=exited status=1
homestead systemd[1]: Failed to start A high performance web server and a reverse proxy server.
homestead systemd[1]: nginx.service: Unit entered failed state.
homestead systemd[1]: nginx.service: Failed with result 'exit-code'.
Nginx не удалось запустить из-за ошибки в его конфигурации. Ошибка PEM_read_bio_X509_AUX
указывает на файл /etc/nginx/ssl/homestead.app.crt
. Где этот файл используется в конфигурации?
$ sudo vim /etc/nginx/sites-enabled/homestead.app
Я прокомментировал связанные строки:
@@ -1,6 +1,6 @@
server {
listen 80;
- listen 443 ssl http2;
+# listen 443 ssl http2;
server_name homestead.app;
root "/home/vagrant/Code/public";
@@ -42,7 +42,7 @@ server {
deny all;
}
- ssl_certificate /etc/nginx/ssl/homestead.app.crt;
- ssl_certificate_key /etc/nginx/ssl/homestead.app.key;
+# ssl_certificate /etc/nginx/ssl/homestead.app.crt;
+# ssl_certificate_key /etc/nginx/ssl/homestead.app.key;
}
Запустите nginx с $ sudo service start nginx
и снова запустите nmap
с хоста.
$ nmap homestead.app -p 80,443
...
PORT STATE SERVICE
80/tcp open http
443/tcp closed https
Порт 80 открыт и теперь должен быть доступен из http://homestead.app. Конечно, TLS не будет работать, но вы сможете исправить это, создав новые сертификаты. Я не уверен, почему сертификаты не загружаются в первую очередь.