Pocket
LINEで送る

エラーは下記です。

An active access token must be used to query information about the current user.

恐らくさくらのレンタルサーバのSSL使うと、httpsアクセスだと認識されないことが原因なのではないかと思った。facebookのSDKみたらやはり、$_SERVER[‘HTTPS’]を見てたので、下記のようにしたらできた。

if(isset($_SERVER['HTTP_X_SAKURA_FORWARDED_FOR'])){
    $_SERVER['HTTPS'] = 'on';
}

ちなみに、このプログラムはcakePHP2を使っているのですが、twitterやfacebookなどのコールバックURLをRouter::url()を使って動的に取得させていて、これまたhttpsアクセスしてるのにhttpsと勘違いされて、http://***というアドレスにされてしまっていた。これについては、core.phpのConfigure::write(‘App.fullBaseUrl’, ‘http://example.com’);に、httpsアドレスをベタ打ちしたら大丈夫になった。

Pocket
LINEで送る

カテゴリー: OS・サーバ

コメントください

関連記事

OS・サーバ

Ubuntu16.04 – キーボードのキー割り当て(キーバインド)をxkbで変更する

ホームディレクトリに.xkbというのを作って、.xkb以下に設定ファイ 続きを読む …

OS・サーバ

windows10とubuntu16.04のデュアルブート

このubuntu16.04日本語版をデュアルブートさせました。このサイ 続きを読む …

OS・サーバ

UbuntuにzshとvimとGoを設定する

zshはoh-my-zshというのを使います。vimはdeinでプラグ 続きを読む …

%d人のブロガーが「いいね」をつけました。