Windows 本地的 Apache 下使用 Laravel 访问 Lumen 的接口,错误的读取了 Laravel 的 env,该如何解决?

两个项目,一个是提供接口的 Lumen 程序,一个是 Laravel,都部署在了本地的 Apache 中。
通过 Vhost.conf 和修改 host 使之能达到通过虚拟的域名访问对应项目的效果。
如 api.xx.com 能访问 Lumen 的程序并正确返回结果,如 xxx.com 能正确访问 Laravel 的程序,实际上他们都指向了 127.0.0.1,分开测试时他们是连上各自的数据库的,都没有问题。
然后我在 Laravel 里通过 curl访问 Lumen 的接口时,报错说 Laravel 的数据库里没有那张表,然后我逐一排查发现 Lumen 的程序竟然会调用 Lumen 和 Laravel 的 env 而自己的 env 里数据库配置被 Laravel 里的覆盖了。
那么,我现在该如何排查原因呢?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 3

已经解决了,将 Lumen 下 database/app.php 中 (new Dotenv\Dotenv(DIR.'/../'))->load()改为(new Dotenv\Dotenv(DIR.'/../'))->overload()

9年前 评论
gutao123

我也碰到了这个问题,太奇怪了

7年前 评论
gutao123

@黄大仙 楼主找到真正的原因在哪了吗

7年前 评论

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