“没有指定输入文件。”在运行Laravel Homestead时

时间:2017-09-30 15:44:23

标签: php laravel vagrant virtualbox homestead

我已经安装了Laravel Homestead并编辑了我的主机文件但是当我在浏览器中访问指定的URL时,我收到消息“未指定输入文件”。在终端上运行“流浪汉”之后。我最初的猜测是在Homestead.yaml文件中有些不正确但我看不清楚。

我正在运行Mac OS,我的VM是VirtualBox。我的所有网站都位于名为“Sites”的文件夹中,该文件夹是OS用户的直接子项,因此用户名/站点。我的Homestead文件夹的路径也在这里:_Username / Sites / _homestead“。

在Homestead.yaml文件中,我将“文件夹”设置为map: ~/Sites - 这应该意味着当我在浏览器中访问指定的URL时,我会得到一个文件夹列表(我的所有网站),对吧?或者至少那是我期待的结果。

如果我在浏览器地址栏中输入~Sites/,我会看到一个文件夹列表,所以位置正确。它重定向到file:/// Users / USERNAME / Sites /

在我运行vagrant up'之前,'username.dev'在地址栏中键入时无效,之后就行了。所以我认为这一切都是正确的,因为它确实捡起来了。

这是我的Homestead.yaml文件的内容供参考:

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

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Sites
      to: /home/vagrant/Code

sites:
    - map: username.dev
      to: /home/vagrant/Code/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

任何人都可以看到什么是错的或建议其他可能是什么?

3 个答案:

答案 0 :(得分:0)

如果文件夹用户名/网站包含不同的网站文件夹,请尝试将网址映射到:/home/vagrant/Code/yourSiteFolderName/public

并运行vagrant reload --provisionvagrant up --provision重新加载配置

答案 1 :(得分:0)

显然你必须指定一个特定的文件夹,但如果你想在不同的项目之间快速切换,你可以映射到homestead.yaml文件中的多个目录:

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

    - map: secondProject.dev
      to: /home/vagrant/Code/secondeProject/public

您执行了命令vagrant up --provision并仍然输出相同的内容? 我发现了类似的问题,可能对您有所帮助: Using Laravel Homestead: 'no input file specified'After installing Homestead I get "No input file specified" in the browser. How can I access my laravel project

答案 2 :(得分:0)

对于我来说,经过数小时的搜索,我意识到我遇到了大写错误:(

   - map: C:/Users/jason/Code/blog
     to: /home/vagrant/Code/blog

sites:
    - map: blog.test
      to: /home/vagrant/***code***/blog/public

代码是以下站点的代码:

所以请大家注意,首先要检查最简单的错误;)