gpt4 book ai didi

Laravel Socialite 无法在实时服务器上运行,只能在本地计算机上运行

转载 作者:行者123 更新时间:2023-12-02 04:21:23 26 4
gpt4 key购买 nike

我最近将我的应用程序移至实时服务器中。
问题是 Laravel Socialite 停止工作,解释如下:
我点击谷歌登录并选择电子邮件后,回调时会发生这种情况:
Abstract.php 第 200 行出现 InvalidStateException。
为了解决这个问题,我使用了 stateless() ,现在新的错误是:
客户端错误:`POST https://www.googleapis.com/oauth2/v4/token` 导致 `400 Bad Request` 响应:{ "error": "invalid_request", "error_description": "缺少必需的参数:代码"}

这是我已经尝试过的事情的列表:
1- 在 Google 网站中,我将 google api urlcallback url 更新为新的实时域地址:http://www.domain-name.comhttp://www.domain-name.com/login/google/callback

2-我修改了 config/session.php 文件,如下所示:
'domain' => env('SESSION_DOMAIN', 'www.domain-name.com'),

3-我的存储文件夹已经拥有这样的权限:
drwxrwxr-x 5 root www-data 4096 Jun 24 18:30 存储

4-我更改了 vendor\laravel\socialite\src\Two\GoogleProvider.php 文件并删除了“个人资料”,现在它看起来像这样:

protected $scopes = [
'openid',
'email',
];

5- 我使用了 php artisan cache:clearcomposer dump-autoload 并多次清除浏览器缓存数据。

6-我尝试了 $userSocial = Socialite::with('google')->user(); 而不是 $userSocial = Socialite::driver('google')->user(); ,但我仍然在 Abstract.php 第 200 行得到 InvalidStateException。仅当我更改为 $userSocial = Socialite::driver('google')->stateless()->user(); 时,错误才会更改为我在问题开头所说的内容。

我的config/services.php文件是这样的:

'google' => [
'client_id' => 'my-correct-client-id-from-google',
'client_secret' => 'my-correct-client-secret-from-google',
'redirect' => 'http://www.domain-name.com/login/google/callback',
],

我已经尝试解决这个问题两天了。任何帮助将不胜感激。

最佳答案

浪费了很多时间之后。终于找到答案了:
这是 nginx:
所以我跑了sudo nano /etc/nginx/sites-available/default

并修复了这一行:

try_files $uri $uri/ /index.php?query_string; // wrong 

try_files $uri $uri/ /index.php?$query_string; // fixed 

关于Laravel Socialite 无法在实时服务器上运行,只能在本地计算机上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56780015/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com