Laravel Homestead文件夹映射无法正常工作

时间:2015-11-22 18:35:03

标签: php laravel vagrant homestead synced-folder

我按照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)。你可以在这里看到它:

enter image description here

因此,当我尝试在本地访问该应用时,我得到“页面不可用”。

5 个答案:

答案 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
  1. 应与您的操作系统文件结构相匹配
  2. Homestead的文件结构,您不应该更改。
  3. 您的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