hypweb.net
XOOPSマニア  最新情報のRSS(サイト全体)
[ 自宅サーバーWebRing |ID=54 前後5表示乱移動サイト一覧 ]

19年2月23日(Sat) 2時41分
TOP » UsersWiki » nao-pon » blog » 2008-03-15

2008 3月 15 (土)
 

OpenID モジュールを試す anchor.png

OpenIDモジュール を試していますが、なかなか一筋縄ではいきません。 :cry:

Page Top

試した手順 anchor.png

  1. とりあえずインストール
  2. インストール失敗 :cry:
  3. MySQL 4 系なので、mysql.sql の "ENGINE=MyISAM DEFAULT CHARSET=ujis AUTO_INCREMENT=1" を "TYPE=MyISAM" に変更。
  4. インストール完了! :-D
  5. Yahoo!Japan の OpenIDでログインしようとすると画面真っ白
  6. デバグ開始
  7. domxml エクステンションが使えないのがとりあえずの原因 (PHP4なのでPHP5ならdom)
  8. PHP の Configure で、--with-dom が付いているのに使えなくてさんざん悩む。
  9. domxml.so がないことに気付く。 :idea:
  10. Webサーバに apt-get で php-domxml をインストール
  11. domxmlエクステンションが使用可能になったの確認
  12. Yahoo!Japan の OpenIDでログインしようとすると画面真っ白 :-o
  13. www.jkg.in/openid/ の OpenID で試すと、なんか行けそう。
  14. PHP4 用の PHP OpenID Library が怪しそうなので、OpenID Enabled から、開発者用のスナップショットを取ってきて、modules/openid/library に入れる。
  15. Yahoo!Japan の OpenIDでログインしたら、なんか行けそう!
  16. ユーザID nao-pon の - が引っかかり、紐付けできない。 :cry:
  17. テスト用アカウント naoki で試したら、できた!というか、認証直後は真っ白画面で、再読み込みしたらログインできていた。
  18. ん〜なんだかな〜って悩む。 :thinking: :sleepy: ので寝る。
  19. 明けて次の日 3月16日(晴れ)
  20. ログインブロックに統合
  21. エラー時のメッセージが見えるように修正
  22. 画面変遷時の処理を若干調整
  23. これでとりあえず、問題はなさそうなので、しばらく様子を見る。 :pint:
  24. レポートをまとめてフィードバックの予定。
  25. 3月18日
  26. とりあえず、sakimura さんのダウンロードページにコメントとしてレポートした。
  27. 3月19日
  28. 自分好みにカスタマイズ
    • library 以下を、trust側/modules/openid/ に移動
    • 言語ファイルを使用するようにして、マルチリンガルに対応
    • XOOPSグローバル検索に対応 (アカウント情報でOpenIDを表示できるように)
  29. もし、必要な人がいたら手を上げてくれれば、zip パックします。 :-)
  30. 3月20日
  31. Nat(sakimura)さんから、指摘していただいた ca-bundle.crt を最新版に入れ替えた。
    • Vine の場合、所在は /usr/share/ssl/certs ディレクトリ
    • Linksafe でログインできるかな?
      • テストしようとアカウント取ろうと思ったけど、Free で取得できるようなことも書いてあったので、一応申請してみたけど、その後の手続きがよく分からないな〜 [worried]
  32. fuga さんが立てた「OpenID認可モジュール」暫定リポジトリ に参画

Page Top

フィードバックレポート下書き anchor.png

  • MySQL Ver 4 系列でインストールできない
    • mysql.sql の "ENGINE=MyISAM DEFAULT CHARSET=ujis AUTO_INCREMENT=1" を "TYPE=MyISAM" に変更してからインストールする
  • OpenID を入力して、Enter すると真っ白
    • PHP に必要なライブラリが組み込まれていない or 動的に組み込めない。(PHP 4 限定?)
      • 拡張機能 domxml(PHP4), dom(PHP5) を使用できるようにする。参考URL: PHP.DOM XML, PHP.DOM
        • PHP の Configure で、--with-dom が付いているのに使えない場合。
          • Webサーバーに、apt-get などで、php-domxml(php-dom) を導入する。
      • Windows サーバーの場合は、php.ini で組み込む必要があるかも。
        • extension = php_domxml.dll
  • PHP 4 で、真っ白
    • OpenID Enabled から、開発者用のスナップショットを取ってきて、modules/openid/library に入れる。
  • 認証エラー時に真っ白
    • とりあえず、エラーメッセージが表示されるようにする。
    • modules/openid/occomon.php functin displayError()
      1
      2
      3
      4
      5
      6
      
      function displayError($message) {
          //$error = $message;
          //include 'index.php';
          redirect_header((empty($_REQUEST['frompage'])? XOOPS_URL.'/' : $_REQUEST['frompage']), 1, $message);
          exit(0);
      }


コメント一覧

投稿ツリー


AAA   投稿日時 2008-8-27 20:13

お手数をかけております。 :cry:

先ず、
>>とりあえず、"modules_changer" ハックを適用した環境にも対応してみました。
これに入れ替えてみましたら、存在しないディレクトリ構造になってしまいました。

1
2
3
/****/****/****/bbb/openid/finish_auth.php?janrain_nonce
本来は
/***/bbb/openid/finish_auth.php?janrain_nonce

です。
ちなみに、”modules_changer”は

1
2
3
4
5
6
7
8
9
// modules changer (insert this 6 lines)
	if( ! function_exists( 'modules_changer' ) ) {
		$_SERVER['REQUEST_URI'] = str_replace( '/***/' , '/modules/' , @$_SERVER['REQUEST_URI'] ) ;
		$_SERVER['HTTP_REFERER'] = str_replace( '/***/' , '/modules/' , @$_SERVER['HTTP_REFERER'] ) ;
		function modules_changer( $s ) {
			return str_replace( XOOPS_URL.'/modules/' , XOOPS_URL.'/***/' , $s ) ;
		}
		ob_start( 'modules_changer' ) ;
	}

となっています。
次に、OpenID Ver0.22に入れ替えて動作を再度確認・・問題なし。
OpenID Ver0.22のlibralyをVer0.23に入れ替え・・問題なし。
/class/xoopsConsumer.phpファイルの18行以降を書き換え

1
OpenID authentication failed: return_to does not match return URL. Expected http://www.****.***/***/***/openid/finish_auth.php, got http://www.****.***/***/***/openid/finish_auth.php?janrain_nonce=

となります。

よろしく、お願いします。

ゲスト   投稿日時 2008-8-27 21:08

何度も申し訳ありません。 :-(

PM20:28にダウンロードしたOpenIDでもう一度試してみました。

yahooのログインからリダイレクトされると・・

1
http://www.sakawagawa.com/***/***/***/bbb/openid/finish_auth.php?janrain_nonce=

となります。これを表示しているブラウザのアドレス欄で

1
http://www.sakawagawa.com/***/bbb/openid/finish_auth.php?janrain_nonce=

に変えて読み込んだところ、正常画面が表示されました。

で、"modules_changer"を外してみたところ

1
http://www.sakawagawa.com/***/***/***/modules/openid/finish_auth.php?janrain_nonce=

となりまして、こちらも

1
http://www.sakawagawa.com/***/modules/openid/finish_auth.php?janrain_nonce=

に書き換えることで、正常に表示しました。

よろしくお願いします。

nao-pon   投稿日時 2008-8-27 21:20 | 最終変更
引用:

何度も申し訳ありません。

いえいえ、全然大丈夫ですよ。 :thumb_up:
パスが二重になってしまうのは、"modules_changer" 対応のときに enbug してまして、たった今それを修正しました。

本日の 21:15 以降のダウンロード分は、その部分を直してありますので、再度ダウンロードしてお試しください。 :-)

AAA   投稿日時 2008-8-27 21:33 | 最終変更

ありがとうございました。

ログイン画面から既存ユーザに関連付けも出来ました。

  :shy:

nao-pon  投稿日時 2008-8-27 22:02

AAA さん、無事に解決してよかったですね。 :thumb_up:

こちらとしても結果的に、"modules_changer" 対応ができたり、Sakimura さん版 Ver 0.22 からのアップデートに対応できたりしたので、助かりました。 :-)

今後ともよろしくお願いします。 :handshake:

nao-pon  投稿日時 2008-8-27 22:15

CORESERVER な方、こんにちは。

引用:

CORESERVERのXOOPSopenidモジュールが動かず
ライブラリの入れ替えなど試してみたもののダメ。
ようやくここに辿り着いて動くようになりました。

これは、まさに今日 (2008/8/23) に対応できたところでした。

具体的には、Geez in the universe: XREA / CORESERVER で OpenID を使うと Yahoo や livedoor が使えない問題 で紹介されているパッチをあてただけなのですが・・・ :-P
このパッチを書かれた、oov さんに感謝しています。

この、OpenIDモジュールは、fuga さんが、メインの部分を書いているので、fuga さんにも感謝ですね。 :-D

あと、もちろん原作者の Sakimura さん、PHP の OpenID ライブラリを開発している JanRain, Inc. そして、バグ報告をしてくださる皆様に感謝・感謝です。 :shy:

これからもどうぞよろしく。 :handshake:

AAA   投稿日時 2008-8-29 10:53

先日はお手数をかけました。 ;(

その後、自サイトでテストしていましたところ。不具合というか。当たり前の事かも知れませんが、改善を検討いただければ幸いです。

OpenIDでログインして新規ユーザの登録を行う。・・・問題なし
登録ユーザはOpenID一覧より見える。同じく、ユーザ管理でも見える。

この時にユーザ管理でOpenIDログインしたユーザを削除すると、当たり前ですがログイン出来なくなります。
このときOpenID一覧からも表示が見えなくなりますが、openid_localidテーブルにはデータが残っていて、再度OpenIDでログインして新規ユーザの登録を行おうとしても、「User table is not valid.」と表示になってログインできません。

openid_localidテーブルの該当データをphpmyadminで削除すれば、再登録可能になりますが、OpenID一覧のユーザデータとユーザ管理の連携のような事は出来ないでしょうか。
今のところは利用者もないので問題ありませんが、当方で一定期間ログインの無いユーザ登録は削除する方針で運営していて、問題となるOpenID登録のユーザ削除を問題の起きないOpenID一覧にて削除→ユーザ管理にて削除と行えば良いのですが、万一、手順間違えると、そのときにopenid_localidテーブルに蓄積しているデータから探さねばならなくなります。

検討をお願いします。

nao-pon  投稿日時 2008-8-29 17:48

AAA さん、こんにちは。

引用:

この時にユーザ管理でOpenIDログインしたユーザを削除すると、当たり前ですがログイン出来なくなります。
このときOpenID一覧からも表示が見えなくなりますが、openid_localidテーブルにはデータが残っていて、再度OpenIDでログインして新規ユーザの登録を行おうとしても、「User table is not valid.」と表示になってログインできません。

そうですね、これは修正したほうがいいと思います。

ただ、ユーザー削除時の同期は XCL なら可能だと思いますが、X2 ではXOOPS本体の改造が必要になっちゃう(多分)ので、一覧で削除するとか、登録時にうまいことするとかの対応になるかもしれません。

あと、keyword​/OpenID モジュール という、まとめページを作ったので適当にページ編集しちゃってもらっても OK です。 :D

そのページにも案内がありますが、ディスカス - ディスカスOpenID モジュールのディスカッションスペースができたので、今後はそちらに書いていただくと、みんなが見てるので、反応が早いと思います。

よろしくお願いします。 :ok:



新しくコメントをつける

題名
ゲスト名
投稿本文

より詳細なコメント入力フォームへ

トップ   凍結 差分 バックアップ 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 14233, today: 3, yesterday: 3
初版日時: 2008-03-16 (日) 00:45:49
最終更新: 2008-09-11 (木) 09:07:41 (JST) (3816d) by nao-pon
このページのTopへ
ログイン
ユーザ名:

パスワード:

オートログイン

Basic 認証

新規登録 | パスワード紛失



メインメニュー
UsersWiki メニュー
付箋メニュー
付箋メニュー 
付箋の編集
文字色: 背景色:
お名前:  線接続id:
 
id.1:
nao-pon : : 08/03/21 00:03

OpenIDモジュール(改)が必要な方

画面上でダブルクリックして付箋でも張っておいてください。

id.2:
Nat@yahoo : : 08/03/21 15:40

svn repository をオープンしようと思っておりまする。

ブックマーク
オンサイトブックマークは
ログインするとご利用になれます
[ログインする]
サイト内 Wiki
☆ 検索 ☆



高度な検索(サイト内)
FireFox検索プラグイン
オンライン状況
合計 60 人がオンライン中 :-)
(UsersWiki : 11 人)

登録ユーザ: 0 & ゲスト: 60

もっと...
サイト情報
管理人

nao-pon
 

登録ユーザ数: 4598


Web Services by Yahoo! JAPAN
楽天ウェブサービスセンター
Amazon.co.jpアソシエイト
現在ページのQRコード
現在ページのQRコード
[携帯対応]
参照元情報