我正在使用Yii框架和HybridAuth进行社交登录操作,我有谷歌和雅虎工作正常,但我不能让Facebook和Twitter工作。
我需要一个Https://域吗?或者只是添加一些配置?
当我尝试使用facebook或twitter登录时,我会收到此PHP警告:
include(DefaultController.php)[function.include]:无法打开流: 没有这样的文件或目录
错误显示在供应商\ yii_1.1.10 \ YiiBase.php(418):
{
407 foreach(self::$_includePaths as $path)
408 {
409 $classFile=$path.DIRECTORY_SEPARATOR.$className.'.php';
410 if(is_file($classFile))
411 {
412 include($classFile);
413 break;
414 }
415 }
416 }
417 else
418 include($className.'.php');
419 }
420 else // class name with namespace in PHP 5.3
421 {
422 $namespace=str_replace('\\','.',ltrim($className,'\\'));
423 if(($path=self::getPathOfAlias($namespace))!==false)
424 include($path.'.php');
425 else
426 return false;
427 }
428 return class_exists($className,false) || interface_exists($className,false);
429 }
430 return true;
这是我的主配置文件
'modules'=>array('admin',
'hybridauth' => array(
'baseUrl' => 'http://'. $_SERVER['SERVER_NAME'] . '/hybridauth',
'withYiiUser' => false, // Set to true if using yii-user
"providers" => array (
"yahoo" => array (
"enabled" => true
),
"google" => array (
"enabled" => true,
"keys" => array ( "id" => "[private]", "secret" => "[private]" ),
"scope" => ""
),
"facebook" => array (
"enabled" => true,
"keys" => array ( "id" => "[private]", "secret" => "[private]" ),
"scope" => "email,publish_stream",
"display" => ""
),
"twitter" => array (
"enabled" => true,
"keys" => array ( "key" => "[private]", "secret" => "[private]" )
)
)
)
),
答案 0 :(得分:1)
安装HybridAuth时遇到了同样的错误。 通过改变一些文件的大小来解决它。
我的Linux服务器区分大小写,因此无法找到'facebook.php'文件,而'Facebook.php'工作
答案 1 :(得分:1)
尝试导入hybridauth文件:
<强>配置/ main.php 强>
'import'=>array(
...
// for hybridauth
'application.modules.hybridauth.controllers.*',
...
),