Codeigniter spark( http://getsparks.org/packages/oauth2/versions/HEAD/show )を使用してユーザーが自分にログインできるようにしようとしていますfbおよびgoogleを使用したphpサイト。
私のローカル開発サイト(wampserver上)はmysite.devと呼ばれ、次のようなetc/hostsファイルがあります。
127.0.0.1 mysite.dev
Facebookログインは完全に正常に動作します。しかし、googleでログを記録しようとすると、googleは不平を言います:redirect_uriの無効なパラメーター値:非パブリックドメインは許可されません: http://mysite.dev/index.php/oauth2/session/google where oauth2は私のコントローラーであり、セッションはfb/googleなどを指定する関数です
手がかり/ヒント?
私はこれを回避するために、末尾ではなく前にdev部分があるドメインのhostsファイルレコードを追加しました(これも通常は行います)。
/ etc/hosts
127.0.0.1 localhost.mydomain.com
/ etc/Apache vhost
ServerName mydomain.com.localhost
ServerAlias localhost.mydomain.com
次に、Googleに次のように指示します。
http://localhost.mydomain.com/index.php/oauth2/session/google
Google APIコンソールでウェブアプリケーションのクライアントIDを作成するときに、許可されたRedirect URIs
を追加できます。 localhost
などのURLも受け入れます。
Google API Consoleは「mysite.dev」を許可しません。
追加
127.0.0.1 localhost.mydomain.com
hosts
ファイルに
http://localhost.mydomain.com/oauth2callback
「承認されたリダイレクトURI」に私のために働いた