我使用Socialite 2.0和Laravel 5.2.39。 localhost:8000上的社交登录正常工作,但它不适用于生产站点(example.com)。
public function handleProviderCallback($provider)
{
$social_user = Socialite::driver($provider)->user();
....
}
调用Socialite::driver($provider)->user()
函数时出现异常错误:
AbstractProvider.php第199行中的InvalidStateException
我尝试了人们建议的所有解决方案,但没有运气。 这是一些配置
SESSION_DRIVER=file
DOMAIN=example.com
URL=http://example.com (used in config/app.php)
DOMAIN=mysite.com (used in config/session.php)
以下是路线:
Route::get('redirect/{provider}', 'Auth\AuthController@redirectToProvider');
Route::get('callback/{provider}', Auth\AuthController@handleProviderCallback');
感谢您的帮助!
答案 0 :(得分:0)
最后我找到了解决方案。它与Nginx配置有关。使用try_files $ uri $ uri / /index.php$is_args$args;而不是try_files $ uri $ uri / /index.php$query_string;在文件/ etc / nginx / sites-available /.