Yii2 Facebook身份验证在PHP重新启动后成功一次,之后失败
我通过以下教程在我的Yii2应用程序上使用facebook登录: 它可以正常工作几个月,但突然出现了一个问题。当我尝试登录时,它在成功登录Facebook并返回应用程序后给出错误502。我尝试在服务器上重新启动PHP FPM。它在PHP重新启动后只工作一次,但之后继续失败 我检查了nginx错误日志,发现:Yii2 Facebook身份验证在PHP重新启动后成功一次,之后失败,php,facebook,nginx,yii2,fpm,Php,Facebook,Nginx,Yii2,Fpm,我通过以下教程在我的Yii2应用程序上使用facebook登录: 它可以正常工作几个月,但突然出现了一个问题。当我尝试登录时,它在成功登录Facebook并返回应用程序后给出错误502。我尝试在服务器上重新启动PHP FPM。它在PHP重新启动后只工作一次,但之后继续失败 我检查了nginx错误日志,发现: 2017/05/31 05:49:30 [error] 7368#7368: *151 recv() failed (104: Connection reset by peer) whil
2017/05/31 05:49:30 [error] 7368#7368: *151 recv() failed (104: Connection reset by peer)
while reading response header from upstream, client: 103.47.104.104, server: my.app, request:
"GET /site/auth?authclient=facebook&code=AQA5h_.....gIdRKg&state=6a424...7efc
HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock:", host: "my.app"
可能是什么问题?解决了!感谢@vijay nathji,他指出了正确的方向 这实际上是PHP7()中的一个bug。这个问题应该在PHP7.1.3中解决,但我需要一个快速的解决方案 所以我所做的只是在处理Facebook登录的特定功能上禁用OPC。我添加了
frontend/config/main.php
:
'on beforeRequest' => function(){
if(strpos($_SERVER['REQUEST_URI'], 'auth') !== false){
ini_set('opcache.enable', false);
}
},
也许这个讨论可以帮助你:哇,谢谢,我禁用了opcache,它成功了。但是,我的应用程序中需要缓存。还有其他的解决方法吗?Yii2 ActiveRecord cache,请完成以下步骤:很高兴听到您说我的方向对您有所帮助。享受编码:)