22

VM に Laravel Homestead 2.0 を使用しており、YAML ファイル 192.168.10.10 のデフォルト IP アドレスでサイトを提供しようとしています。

/etc/hosts ファイルは次のようになります。

# Homestead
192.168.10.10   beta.dev
192.168.10.10   deploy.dev

私の Homestead.yaml ファイルは次のようになります。

---
ip: "192.168.10.10"
memory: 2048
cpus: 1

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Projects
      to: /home/vagrant/Projects

sites:
    - map: beta.dev
      to: /home/vagrant/Projects/emorybeta/public
    - map: deploy.dev
      to: /home/vagrant/Projects/deploy/public

...

ドメインを 127.0.0.1 にリンクするとサイトが表示されますが、URL の末尾にポート 8000 を追加する必要があります (これは大したことではなく、指定した IP アドレスを機能させたいだけです)。

ドメインが192.168.10.10を指しているときにサーバーに接続できない理由を誰か知っていますか?


アップデート:

deploy.dev に ping を実行すると、正しい IP アドレスが表示されますが、ブラウザがサーバーに接続できません。Yosemite の DNS の問題と関係があるのではないかと考えています。

4

11 に答える 11

8

私は数週間前に同じ問題を抱えていました。

最初に: フォルダー パスが正しいことを確認します。正しい場合は、再確認してください

次へ: homestead destroy と homestead up を実行して、VM を再初期化します。

それでも問題が解決しない場合: 192.168.10.10 にも接続されている可能性のあるデバイスが自宅にあるかどうかを確認します。

それでも問題が解決しない場合は、おそらく問題を修正するのが非常に難しいため、github の問題を作成することをお勧めします。

于 2015-01-23T15:26:58.493 に答える
3

これは、Windows 10 マシンに対して行ったソリューションです。

管理者コマンド プロンプトで、ルート -p add 192.168.10.0 mask 255.255.255.0 192.168.10.1と入力して、固定ルートを vagrant ボックスに追加してください。

そして、 192.168.10.10に ping できることを確認してください。

また、virtualbox ホストオンリー アダプター用に構成された IP アドレスが 192.168.10.1 で、マスクが 255.255.255.0 であることを確認します。

于 2015-09-09T02:56:34.507 に答える
2

昨日、Homestead 5 で同様の問題が発生しました。問題の原因は、間違った Vagrantfile を実行していたことが原因であることが判明しました。

インスタンスは 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  

新しい「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
于 2015-07-15T17:05:51.297 に答える
2

私はまさにこの問題を抱えていましたが、TLS 証明書をロードする際のエラーにより、nginx が起動に失敗していたことが判明しました。この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 の構成にエラーがあるため、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 は機能しませんが、新しい証明書を生成することで修正できるはずです。そもそも証明書の読み込みに失敗した理由がわかりません。

于 2017-10-03T03:35:58.050 に答える
1

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)
于 2016-10-03T15:31:19.373 に答える
0

このVagrantプラグインを使用してください

vagrant plugin install vagrant-hostmanager

次に、これをホームステッド フォルダーで実行して、再度プロビジョニングします

vagrant reload --provision

これで、新しいプロジェクトを追加するたびにホスト ファイルを更新する必要がなくなります。

于 2021-06-03T04:00:15.243 に答える