Laravel + Homestead + Vagrant无法正常工作

时间:2016-02-26 13:55:19

标签: php nginx vagrant homestead

我是宅基地和流浪汉的新手,我在laravel文档中安装了宅基地,但在访问地址时遇到超时错误:192,168.10.10。

在此错误之前,我在ip上收到错误请求超时,所以我取消注释这一行:

config.vm.network "private_network", ip: "192.168.10.10"

然后网络开始工作ping。

我也取消注释了这一行:

config.vm.network "forwarded_port", guest: 80, host: 8080

所以它开始向我展示前锋。

然后我将此行取消注释:

config.vm.network "public_network"

但仍然出现错误,现在不知道错误是什么。我通过登录到ssh:vagrant ssh然后cd / etc / nginx / sites-enabled来检查nginx文件夹

我看到没有配置文件可能因为vagrant没有加载Homestead.yaml文件。

这是我的yaml文件

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

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Websites
      to: /vagrant/Code

sites:
    - map: laravel.dev
      to: /home/vagrant/Code/admin/public

databases:
    - homestead

# blackfire:
#     - id: foo
#       token: bar
#       client-id: foo
#       client-token: bar

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

1 个答案:

答案 0 :(得分:3)

添加宅基地后,您的第一项工作就是克隆存储库:

git clone https://github.com/laravel/homestead.git Homestead

将其克隆到您要运行代码或网站示例的文件夹中:

if~ / Websites then:

cd ~/Websites

然后克隆命令,在终端中克隆cd Homestead运行bash init.sh之后,它将在你的Homestead.yaml文件所在的根目录中创建一个名为.homestead的文件夹。像这样编辑Homestead文件:

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

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

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

sites:
    - map: laravel.dev
      to: /home/vagrant/Websites/admin/public

databases:
    - homestead

# blackfire:
#     - id: foo
#       token: bar
#       client-id: foo
#       client-token: bar

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

编辑完成后,在终端中使用此命令添加ssh密钥:

ssh-keygen -t rsa -C"你@ homestead"

Keygen应该在文档根目录下的.ssh文件夹中创建文件,但如果没有,则创建文件夹.ssh然后将其从文档根目录粘贴到ssh文件夹,这样就不需要编辑Homestead.yaml文件

完成此操作后,将目录更改为:cd ~/Websites/Homestead

现在运行:

vagrant up

如果在yaml文件或Vagrantfile中进行任何编辑,则运行此命令:

vagrant reload --provisions

也许这应该解决你的问题,否则你的电脑出了问题:D

不要忘记在/ etc / hosts文件中添加它:

192.168.10.10      laravel.dev

如果这些都没有帮助,那么很多人都想查看Laravel文档:

Laravel Documents