【问题标题】:Laravel passport 500 internal server error on EC2EC2上的Laravel护照500内部服务器错误
【发布时间】:2017-05-07 16:33:07
【问题描述】:

我正在构建一个使用 Angular 2(不称为 4)作为前端和 Laravel 5.4 作为 API 后端的应用程序。我正在使用 Laravel 的护照密码授予功能来验证用户对 API 的访问权限。

前端没有直接访问 oauth 路由。我的自定义身份验证控制器正在与 oauth/token 对话以获取授权值。

此设置在我的本地环境中运行良好,但在 AWS EC2 中会引发 500 内部服务器错误。

我以为它可能与 GuzzleHttp\Client 有关,但事实并非如此。即使我尝试直接从 Postman 访问 oauth/token,它仍然会引发 500 内部服务器错误。

private function getPasswordGrant($username, $rawPassword) {
    $http = new HttpClient();
    $url = url('/') . "/oauth/token";
    return $http->post($url, [
        "form_params" => [
            "grant_type"    => "password",
            "client_id"     => config("auth.oauth_password_grant_client_id"),
            "client_secret" => config("auth.oauth_password_grant_client_secret_key"),
            "username"      => $username,
            "password"      => $rawPassword,
            "scope"         => "*",
        ],
    ]);
}

这是我的自定义身份验证控制器中的函数,它在用户通过另一种方法(登录和注册)进行身份验证后请求密码授予。

最令人惊奇的是,在 laravel 或 apache 日志中都没有记录任何内容。

【问题讨论】:

    标签: amazon-ec2 oauth laravel-5.4 laravel-passport


    【解决方案1】:

    好的,经过一番努力和调试。原来是 apache 无法写入 storage/logs/laravel.log 导致这个问题。在授予 storage/ 文件夹适当的权限后,一切都按预期工作。

    【讨论】:

      猜你喜欢
      • 2019-02-10
      • 2018-10-01
      • 2015-01-05
      • 1970-01-01
      • 2014-10-25
      • 2015-08-12
      • 1970-01-01
      • 2017-04-12
      • 2018-02-04
      相关资源
      最近更新 更多