php - Laravel 没有检测到我的本地(开发)数据库配置文件

标签 php database laravel laravel-4 development-environment

我的 Laravel 应用程序正在我的本地计算机上运行。当我运行我的应用程序时,Laravel 使用我的生产数据库配置并抛出异常:

SQLSTATE[HY000] [1045] Access denied for user 'production_admin'@'localhost' (using password: YES)

这很奇怪,因为当我使用 artisan 检查当前环境时,它说:

Current application environment: development

和我的开发数据库配置文件有不同的用户名和密码。

我还在 bootstrap/start.php 中声明:

$env = $app->detectEnvironment(array(
    'development' => array('*.dev', gethostname()),
    'production' => array('*.com', '*.net', '*.org', '*.ir')
));

虽然我在development环境中,但我不知道为什么Laravel坚持使用production配置。

感谢您的帮助。

最佳答案

避免此问题的最佳方法是执行以下操作:

在/bootstrap/start.php

将默认环境检测替换为:

$env = $app->detectEnvironment(function()
{
    return getenv('APP_ENV') ?: 'local';
});

假设您正在运行 Homestead 或类似软件,这将检查是否存在由 apache/nginx 设置的环境变量。

关于php - Laravel 没有检测到我的本地(开发)数据库配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29880078/

相关文章:

php - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 5 行 '*' 附近使用的正确语法

mysql - 服务器上的 "mysqladmin flush-hosts"怎么办?

php - 在 PHP/Laravel 的管理面板中编辑 Sass 等 CSS 变量并添加自定义规则

php - 创建一个查询,该查询将检查数量是否在数量范围之间,并使用 laravel 中的 jquery 从产品 ID 输出一定数量的基础

PHP MySQL JSON 输出

php - mysql。以月为单位的日期差异

java - JPA持久性问题

mysql - 个人和全局消息数据库设计

php - 在 MAMP 中使用 Laravel 设置 PostgreSQL

php - 如何将 COUNT() 与 MYSQLi 和准备好的语句一起使用?