【商用?】OpenPNE その3【GPL?】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/05/31(水) 03:11:45ID:???SNSシステム「OpenPNE」について語るスレ。
0103逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:03:43ID:???Version2.0を見てますか?
基本的には、MVCモデルで作られているようですね。
OpenPNEは、PHPフレームワーク「mojavi」を利用していたようです。
http://snsoft.jp/archives/2005/04/snsoft_4.html
今はどうしているのか知りませんが、既存のフレームワークを独自にカスタマイズして使っているんかな?
大雑把には、
(1) MVCモデルでいうところのController(+Action)、Model、Viewのファイルがどこにあるか?
(2) URLのクエリー文字列を見て、どんなふうにして処理を割り振っているか
を追跡すれば、各機能の処理の流れが見えてくると思います。
0104逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:11:20ID:???ユーザーの立場で、どんなふうにWebアプリケーション内をたらいまわしにされるか見ていきましょう。
※以下、ディレクトリ&ファイルの位置表現について、OpenPNE2.0をダウンロードして
解凍した直後の状態にある「OpenPNE」というフォルダを、便宜的にルート「/」とします。
「OpenPNE」フォルダ(=「/」)内には、
/bin
/lib
/public_html
/setup
/var
/webapp
/webappext
という7つのフォルダがありますよね?
0105逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:15:04ID:???まずはユーザーが最初にアクセスする
/public_html/index.php
ファイルの中身を見てください。
require_once './config.inc.php';
require_once OPENPNE_WEBAPP_DIR . '/init.inc';
openpne_execute();
↑たったこれだけすね!
0106nobodyさん
2006/06/16(金) 01:20:09ID:???0107逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:21:31ID:???/public_html/index.php では、
まず、
/public_html/config.inc.php
/webapp/init.inc
というWebアプリケーションの初期化に関するファイルを読み込んでいます。
ここの設定によって、アプリケーションの挙動を変えることができるようになっています。
2つめの初期化設定情報ファイル /webapp/init.inc 内を見てください。
// ライブラリ読み込み
require_once 'util.inc.php';
require_once 'db.inc.php';
require_once 'controller.php'; ←コントローラーの呼び出し
require_once 'OpenPNE/Smarty.php';
require_once 'OpenPNE/Auth.php';
require_once 'OpenPNE/Config.php';
という部分で、Controllerを呼び出します。
0108逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:26:08ID:???コントローラーはこれです。
/webapp/lib/controller.php
中身を見てみましょう。
/**
* 初期実行 index.php から呼ばれる
*/
function openpne_execute()
{
・・・(中略)・・・
}
このopenpne_execute()が処理の割振りを決めているところです。
0109逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:32:56ID:???OpnePNEのURLをみると、クエリー文字がズラズラ並んでいますね!?
= http://openpne.jp/?m=pc&a=page_o_login の「?m=pc&a=page_o_login」という文字列です。
openpne_execute()で、受け取ったクエリー文字列から、
$module = '';
$type = '';
$action = '';
という3つの変数、パラメータを決定し、それらに基づいて、
openpne_forward($module, $type, $action);
の部分で、実際の処理に飛んでいきます。
この後もゴチャゴチャ続きますが、大きな流れはこれだけです。
0110逆襲のニート ◆OWVAgSWYwE
2006/06/16(金) 01:37:09ID:???m(_~_)m …ツッコミありがとうございます。w
それでは良い子のみなさん♪オヤスミナサイ☆
■ このスレッドは過去ログ倉庫に格納されています