我在 hostgator.com 中有一个共享 ssl 的主机,我在 public_html(root) 目录中上传了 codeIgniter 站点。我想开发一个网站以及 facebook 应用程序。网站在运行 facebook 应用程序时通过“使用 facebook 登录”成功运行,它给出了 url 重定向错误。
这是http网址
url(Website): http://example.org/
和安全网址是
https://in9.hostgator.in/~username/
在 facebook 应用程序配置中,
canvas url : http://example.org/
Secure Canvas URL : https://in9.hostgator.in/~username/ (Work in url)
当我运行 facebook 应用程序时,facebook 给出一个错误:
API Error Code: 191
API Error Description: The specified URL is not owned by the application
Error Message: Invalid redirect_uri: Given URL is not permitted by the application configuration.
在应用程序中,根目录中没有用于重定向或删除 index.php 的 .htaccess 文件。
我已经运行了这个基本控制器代码:
public function __construct()
{
parent::__construct();
$this->load->library("session");
$this->load->helper('cookie');
parse_str( $_SERVER['QUERY_STRING'], $_REQUEST );
$CI = & get_instance();
$CI->config->load("facebook",TRUE);
$config = $CI->config->item('facebook');
$this->load->library('Facebook', $config);
}
/**
* Index function
* @access public
*
public function index()
{
$userId = $this->facebook->getUser();
// If user is not yet authenticated, the id will be zero
if($userId == 0){
// Generate a login url
$params = array(
'scope' => 'email,user_about_me, user_birthday, user_location');
$url = $this->facebook->getLoginUrl($params);
echo "<script type='text/javascript'>" . "top.location.href = '" . $url. "';</script>";
}
}
当我打印'$url'时,查询字符串中的redirect_url 是' http://in9.hostgator.in/~username/ ',而不是重定向到https 路径。
我很困惑,代码中有什么错误?或服务器中的一些错误配置或什么?