发送API请求时Lumen有时会抛出500个?

时间:2015-06-06 07:43:13

标签: php angularjs laravel-5 lumen

我正在使用客户端anuglarJs和服务器端Lumen为REST API开发应用程序。我的.env配置如下,

APP_ENV=local
APP_DEBUG=TRUE
APP_KEY=XrPbyRlU5p0szSw5MrAQWwWim8C0MXjT

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_DATABASE=kainfo
DB_USERNAME=root
DB_PASSWORD=

CACHE_DRIVER=file
SESSION_DRIVER=file

在bootstrap / app.php中启用Dotenv::load(__DIR__.'/../');

我的问题是,有时Lumen会抛出500异常并在下次刷新请求时运行良好。 lumen

错误日志是,

[2015-06-06 07:51:41] lumen.ERROR: exception 'PDOException' with message 'SQLSTATE[HY000] [1044] Access denied for user ''@'localhost' to database 'forge'' in C:\xampp\htdocs\Study\kasrodinfo\web\vendor\illuminate\database\Connectors\Connector.php:47

2 个答案:

答案 0 :(得分:1)

您需要更改\ vendor \ laravel \ lumen-framework \ config \ database.php文件中的数据库,用户名和密码

答案 1 :(得分:0)

同样受此影响,我们在此问题上找到了以下内容:

我们使用Apache 2.4和事件MPM以及PHP 7的线程安全构建。这导致env()方法无法可靠地响应 - 它可以在代码中的某一点为您提供正确的变量,然后只是向下几行它会返回别的东西。 (就像trevorg遇到的默认变量一样。)

我们转而使用prefork MPM,问题立即消失。

是的,与其他MPM相比,prefork在速度方面很糟糕,但似乎Apache,PHP和/或Laravel / Lumen中的事件MPM和环境变量存在一些问题。