PHPでウェブの世界と繋がろう!
menu
ホーム > トピックス > [ HybridAuth ]をインストールしてみよう。 TwitterやFacebookへのログイン機能を実装できるPHPライブラリ

[ HybridAuth ]をインストールしてみよう。 TwitterやFacebookへのログイン機能を実装できるPHPライブラリ

Pocket

ライブラリ情報とインストール方法

ライブラリ名

イメージ

HybridAuthとは
HybridAuth は、Twitter や Facebook などのソーシャルサービスへのログイン機能をこれ1個で実装できるPHPライブラリ「HybridAuth」です。

昨今のウェブサービスでは、Facebook や Twitter、MySpace、Googleなど、様々なソーシャルアプリケーションやそのAPIサービスが提供されています。
HybridAuth を利用することで、開発者はこれらのサービスとの連携を容易に構築することが出来ます。
ソーシャルアプリケーションへのサインイン、データ共有、ユーザープロファイルや友達リストなどのステータスの更新、このような機能をウェブサイトに実装することで、訪問者と顧客の囲い込みを実現するソーシャルサービスを構築することが出来います。

HybridAuthの目標は、アプリケーションと様々なソーシャルサービスのAPIや Facebook や Twitter、MySpace、Googleなどのアイデンティティプロバイダとの間の抽象的なAPIとして機能することです。

HybridAuthは、Facebook、Twitter、Google、Yahoo、Windows Live、MySpace、LinkedIn、FourSquare、OpenID に対応しています。(2011/9 現在)

ソーシャルサービスと連携するサイトにとっては非常に便利なライブラリでしょう。HybridAuth を駆使してソーシャルサービスと連携した便利なサイトを構築してみては!

インストールとTwitterへのログイン

インストールガイド

動作環境

  • Apacheがport番号80で動作していること
  • PHP Version 5.2以上であること(phpinfo();関数で確認)
  • cURL support enabledであること(phpinfo();関数で確認)
  • Simplexml support enabledであること(phpinfo();関数で確認)
  • ダウンロード解凍したフォルダはドキュメントルート直下に配置すること
    本項の例では、http://www.tryphp.net/hybridauth/index.php としています。

※「www.tryphp.net/hybridauth/」は本項での例として記述しているドメインとディレクトリですので、インストールする環境に合わせてドメインとディレクトリを変更して読み進めて下さい。また、実際にサンプルスクリプトを設置しておりますが、そちらのURLは本頁の例のURLとはことなります。実際のサンプルはこちら

右のリンクをクリックしてみて下さい。「Sign-in with Facebook」「Sign-in with Twitter」
– サンプル Click Here ! –

ファイルのダウンロード

ダウンロードページ→URL
ダウンロードファイル→HybridAuth 2.0.2 2011/10/19

解凍ファイルのアップロード

解凍した「hybridauth-2.0.2」フォルダの中にある「hybridauth」フォルダをドキュメントルート直下にアップロードします。
本サイトの例:http://www.tryphp.net/hybridauth/index.php

index.phpファイルパーミッションの変更

http://www.tryphp.net/hybridauth/index.phpファイルパーミッションを「0755」にします。

keys and secretsをhybridauth.phpに設定

http://www.tryphp.net/hybridauth/hybridauth.php ファイルをエディタで開き、「key」「secret」を入力します。以下はTwitterの場合です。
「key」「secret」はTwitterでアプリケーションを作成すると取得できます。
Twitter開発者用のページでアプリケーションを登録

// twitter
"Twitter" => array ( 
			"enabled" 	=> true,
			"keys"	 	=> array ( "key" => "******************", "secret" => "******************************************************" )
		),

また、base_urlも設定します。
※ 筆者の場合 www を入力しないほうが安定しました。

return 
array( 
	"base_url"         => "http://tryphp.net/hybridauth/", 

これでアプリケーションの設定は一先ず完了です。次にexamplesを使用して実際にログインしてみます。

examplesフォルダのアップロード

-1-
解凍した「hybridauth-2.0.2」フォルダの中にある「examples」フォルダをドキュメントルート直下にアップロードします。「hybridauth」フォルダと同じ階層のディレクトリにアップロードして下さい。
http://www.tryphp.net/examples/
http://www.tryphp.net/hybridauth/

-2-
アップロードが完了したら http://www.tryphp.net/examples/index.html へアクセスします。画面右の「Simple authentication form」の画像をクリックして、http://tryphp.net/examples/form_authentication/login.php へアクセスします。

-3-
画面右の「Sign-in with Twitter」をクリックします。

-4-
Twitterのアプリケーションにジャンプします。ID・パスワードを入力するか、すでにログイン済みであればアプリケーションを認証します。

-5-
ログインが完了すると元のサイトに戻りログイン情報が取得されます。


これで一通り完了です!
正常に動作しない場合は上記の「動作環境」を確認してみて下さい。
ちなみにFacebookもログイン確認できました。

tryphp.netでもサンプルを設置してあります。設置箇所は上記で説明したディレクトリではないので、注意してください。サンプルではドキュメントルート直下に「phplibrary」というフォルダを作成して、その中にファイルを設置してあります。
サンプルでは、Twitter と Facebook でログインできるようになっています。

右のリンクをクリックしてみて下さい。「Sign-in with Facebook」「Sign-in with Twitter」

– サンプル Click Here ! –

「Twitterログイン+つぶやき」24行の簡単サンプルコード

以下のコードは Twitter へログインして「Hello world!」をツイートするサンプルコードです。
ログイン → つぶやきのAPI → ログアウト の流れ出実行されます。
成功した場合「Hi there!」「ログインアカウント名」が表示され、「Hello world!」とツイートされます。タイムラインを確認してみて下さい。

<?php
//hybridauth.phpへのフルパスを記述
$config = '・・・/hybridauth/hybridauth.php';
//Auth.phpへのフルパスを記述
require_once( "・・・/hybridauth/Hybrid/Auth.php" );

try{
	$hybridauth = new Hybrid_Auth( $config );

	$twitter = $hybridauth->authenticate( "Twitter" );

	$user_profile = $twitter->getUserProfile();

	echo "Hi there! {$user_profile->displayName}<br />";

	$twitter->api()->post( 'statuses/update', array( 'status' => "Hello world!" ) );

	$twitter->logout();
}

catch( Exception $e ){
	echo "Ooophs, we got an error: " . $e->getMessage();
}
?>

– サンプル Click Here ! –

HybridAuthのリンク
サイト:URL
Twitterアカウント:URL
ドキュメント:URL

HybridAuth最新バージョン2.1.0のインストール(2012/09/14)
最新バージョンのインストールを試してみました。上記と全く同じ環境へインストールしてみましたが、動作確認できました。

インストールガイド

動作環境

上記と同じ環境でインストールしてみました。
今回は、ドキュメントルート直下に「hybrid」というフォルダを作成してそこへファイルをアップロードしました。
※「tryphp.net/hybrid/」は本項での例として記述しているドメインとディレクトリですので、インストールする環境に合わせてドメインやディレクトリを変更して読み進めて下さい。
今回は、本頁で説明しているディレクトリと実際のサンプルを設置しているディレクトリは同じにしてあります。サンプルでは Facebook と Twitter でログインできるようになっています。
– サンプル Click Here ! –

ファイルのダウンロード

ダウンロードページ→URL
ダウンロードファイル→HybridAuth 2.1.0 2012/9/14

解凍ファイルのアップロード

解凍した「hybridauth-2.1.0」フォルダの中にある「hybridauth」フォルダをhttp://tryphp.net/hybrid/にアップロードします。

config.phpファイルパーミッションの変更

http://www.tryphp.net/hybrid/hybridauth/config.phpファイルパーミッションを「0777」にします。

install.phpへアクセスしてインストール設定

ブラウザから直接 http://www.tryphp.net/hybrid/hybridauth/install.php へアクセスします。

-1-
インストール画面に記述されている大まかな概要を以下に記します。

  • 重要事項の説明 [ Important notices ]
    • セキュリティ上の理由から、できるだけ早く、インストールプロセスを完了後(install.phpファイル)を削除してください
    • HybridAuthインストーラを使用すると、既存のコンフィギュレーションファイル(config.phpファイル)が消去されます。あなたは既にHybridAuthの古いインストールをお持ちの場合は、config.phpファイルのコピーを保存して置いて下さい。
    • HybridAuthはデフォルトの11のプロバイダが含まれています。もっと欲しい場合は、HybridAuth Webサイトにに移動して、追加のプロバイダパッケージをダウンロードしてください。
    • 新しいバージョンがあるかどうかを確認するためにHybridAuthホーム·ページをご覧ください。
  • エンドポイント [ HybridAuth Endpoint ]
    • index.phpが置かれている場所HybridAuthエンドポイントURLです。
    • HybridAuth enpointは+ RXモード(読み取り権限と実行)に設定する必要があります「chmod +rx [ディレクトリ]」読み取りと実行の付与
  • Providers setup
    • 正しくアイデンティティ·プロバイダをセットアップするには、慎重にそれぞれのヘルプセクションに従ってください。
    • プロバイダアダプタSatusがDisabledに設定されている場合、ユーザーはあなたのサイトにこのプロバイダを使用してログインすることができません。

-2-
最初にエンドポイントのURLを確認してください。アップロードディレクトリと表示が合っているかどうかです。

-3-
HybridAuthフォルダ(http://www.tryphp.net/hybrid/hybridauth/)の属性が0755になっているか確認してください。

-4-
使用しないプロバイダのSatusをDisabledにして下さい。

-5-
使用するプロバイダのSatusをEnableにし、Application Key と Application Secret を入力して下さい。

-6-
画面一番下にある「セットアップボタン Setup HybridAuth」をクリックして下さい。

-7-
完了画面に移動して「Installation completed: HybridAuth has been successfully installed on your web server.」とメッセージが表示されます。

これでアプリケーションの設定は一先ず完了です。次にexamplesを使用して実際にログインしてみます。

examplesフォルダのアップロード

-1-
解凍した「hybridauth-2.1.0」フォルダの中にある「examples」フォルダをhttp://tryphp.net/hybrid/にアップロードします。「hybridauth」フォルダと同じ階層のディレクトリにアップロードして下さい。
http://www.tryphp.net/hybrid/examples/
http://www.tryphp.net/hybrid/hybridauth/

-2-
アップロードが完了したら http://tryphp.net/hybrid/examples/social_hub/login.php へアクセスします。

-3-
画面右の「Sign-in with Twitter」をクリックします。

-4-
Twitterのアプリケーションにジャンプします。ID・パスワードを入力するか、すでにログイン済みであればアプリケーションを認証します。

-5-
ログインが完了すると元のサイトに戻りログイン情報が取得されます。


これで一通り完了です!
正常に動作しない場合は上記の「動作環境」を確認してみて下さい。
Facebookもログイン確認できました。

– サンプル Click Here ! –


タグ(=記事関連ワード)

日付

投稿日:2011年9月10日
最終更新日:2012年10月31日

関連記事

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://www.tryphp.net/utopics-hybridauth/trackback/