我按照Laravel site中描述的步骤安装了宅基地。 安装成功完成。
我已配置Homestead.yaml文件:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: D:/Code/Homestead/Projects/RestaurantManager
to: /home/vagrant/RestaurantManager
sites:
- map: laravel.app
to: /home/vagrant/RestaurantManager/public
databases:
- homestead
variables:
- key: 'APP_ENV'
value: 'local'
- key: 'APP_DEBUG'
value: 'true'
编辑主机文件:
127.0.0.1 laravel.app
192.168.10.10 laravel.app
我可以运行vagrant并将ssh引入虚拟机。
问题是文件夹映射不起作用。尽管我给出了不同的路径,但映射总是使用相同的路径(D:/ Code / Homestead)。你可以在这里看到它:
因此,当我尝试在本地访问该应用时,我得到“页面不可用”。
答案 0 :(得分:8)
更改配置中的内容时,黄金法则是使用提供选项重新加载流浪汉机器,因此请尝试运行:
vagrant reload --provision
答案 1 :(得分:1)
Homestead.yaml
文件应该有:
folders:
- map: D:/Code/Homestead/Projects # Note 1
to: /home/vagrant/Code # Note 2
sites:
- map: laravel.app
to: /home/vagrant/Code/RestaurantManager/public
您的hosts
文件也需要更新,以删除对127.0.0.1
(您的本地主机)的引用:
192.168.10.10 laravel.app
答案 2 :(得分:1)
由于vagrant-hostsupdater,我遇到了类似的问题。只需使用
卸载插件即可vagrant plugin uninstall vagrant-hostsupdater
然后再次配置机器
vagrant reload --provision
答案 3 :(得分:1)
首先,您需要知道Vagrant将主机上的Vagrantfile
的当前目录自动配置为VM内/vagrant
目录的共享文件夹。
要禁用此默认行为,请在您的Vagrantfile
中添加以下行:
config.vm.synced_folder ".", "/vagrant", disabled: true
第二,您可以通过转义\
字符来编写Windows文件路径,如下所示:
folders:
- map: D:\\Code\\Homestead\\Projects\\RestaurantManager
to: /home/vagrant/RestaurantManager
⚠重要提示:完成此操作后,运行:
vagrant reload --provision
或者,您可以删除folders
中的整个Homestead.yaml
部分,然后直接在Vagrantfile
中指定共享文件夹映射,如下所示:
config.vm.synced_folder ".", "/home/vagrant/RestaurantManager"
答案 4 :(得分:0)
对于Windows,在映射到特定文件夹时使用反斜杠\
试试这个:
folders:
- map: D:\Code\Homestead\Projects\RestaurantManager
to: /home/vagrant/RestaurantManager