我最近在项目之间遇到了一些奇怪的冲突。
基本上我在.ENV中有这些变量:
DB_HOST DB_DATABASE DB_USERNAME DB_PASSWORD
让我们说我有2个项目都有相同的环境变量但完全不同的项目/文件夹。
当一个项目访问数据库时,尝试访问数据库的第二个项目将尝试连接到第一个项目的凭据,因为环境变量共享相同的名称。
两个数据库也不同。我通过故意将它们放在2个不同的mysql服务器上进行了测试,但是没有解决它。
第一个项目完成访问数据库后,第二个项目现在再次运行。
我通过将第二个项目.ENV变量更改为:
来测试这个理论DBHOST DBDATABASE DBUSERNAME DBPASSWORD
它同时起作用。我不必为每个项目制作特殊的前缀(project1-DB-HOST),因此他们不会试图互相访问。
如果重要的是我使用Laragon,因为它比Homestead更简单。它基本上只是一种Wamp设置。
现在我不相信它是一个数据库问题但是更多,因此任何相同的命名环境变量都会导致冲突。
稍微混淆了这里真正发生的事情以及如何解决这个问题。希望有人能说清楚。
感谢。