Homestead 方式部署,网页可以正常访问,API 访问提示 No input file specified.怎么回事?

菜鸟求大神指点!!!

Mac电脑homestead环境安装成功,svn checkout工程到code文件夹,在浏览器里面访问http://homestead.test/chengkuaiji_server/public
可以正常显示,如图:
file

但是在postman里面,访问
http://homestead.test/chengkuaiji_server/p...
得到提示:No input file specified.
HTTP错误码是404
file

zhaoxizhe
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2
zhaoxizhe

问题找到了,哈哈哈!
早先Homestead.yarml文件当中,是这样配置的:
file
这就导致虚拟机中的NginX认为Code目录才是网站的根目录。而Code目录下面又没有index.php文件,所以http请求无法正常进入Laravel框架的路由流程中,所以api访问的时候,就出错。
而此时web访问可以正常,是因为浏览器指定的路径下面,刚好存在一个index.php文件,故而可以正常显示。

解决办法是:
在Homestead.yarml文件当中,改成这样:
file
这样就将homestead.test的根目录,指向了Laravel框架的入口文件index.php所在的public文件夹,于是一切就正常了。

总结:路径问题是大问题,必须小心!

5年前 评论

folders:

  • map: F:/www/Laravel/blog
    to: /home/vagrant/Code/blog
    sites:
  • map: homestead.test
    to: /home/vagrant/Code/blog/public
    databases:
  • homestead

我修改成这样就成功了

4年前 评论
diaoyude (作者) 4年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!