*pukiwkiの携帯用skinを設定する [#z0c3e4e1]
pukiwikiの携帯用skinを設定します。
まあ、基本的には「''pukiwiki.ini.php''」でアクセスされたブラウザ毎にskinを設定できて、デフォルト設定だと、DOCOMO、SOFTBANKの携帯からは携帯用skinが表示されるようになっています。
1世代前に使っていたN73ではちゃんと携帯用skinで表示されたのですが、現在当方が所有する愛機「E71」では、デフォルトでは携帯用skinで表示してくれなかったんですよ。
というわけで、pukiwikiの仕組みの勉強もかねて、設定してみました。
ちなみに、当方のSIMカードはSOFTBANK契約です。(J-PHONE時代からかわってません)
***skinの振り分けの仕組み [#s312b266]
''pukiwiki.ini.php''の約430行目以降に、各ブラウザ(web-server用語的にはagentと呼ぶらしい)ごとのskinを定義してます。
たとえば、デフォルトのVodafoneの表示設定は以下のようになってます。
$agents = array(
##中略
// Vodafone's embedded browser
// Sample: "J-PHONE/2.0/J-T03" // 2.0は"ブラウザの"バージョン
// Sample: "J-PHONE/4.0/J-SH51/SNxxxx SH/0001a Profile/MIDP-1.0 Configuration/CLDC-1.0 Ext-Profile/JSCL-1.1.0"
array('pattern'=>'#^(J-PHONE)/([0-9\.]+)#', 'profile'=>'keitai'),
最初の3行はコメントで、最後の1行が有効行です。
意味としては、簡単に言うと、「''agent''」という変数の「''pattern''」に「''J-PHONE''」とその後に「''0''~''9''」があった場合、「''profile''」に「''keitai''」をセットしなさい、ってことです。
ってことは、表示できてもよさそうなもんですが、表示できないってことは、
--E71でアクセスした際の「''pattern''」は「J-PHONE」ではない
ってことになるんですね~
じゃあ、''E71''の「''pattern''」は何なんだ!って話になるわけです。
***E71のagentのpatternを調べる [#f077df11]
じゃあ、''E71''の「''pattern''」を調べてみました。
まずあたりをつけたのは、apacheのアクセスログ。(当サイトはapacheで動作してます)
apacheのアクセスログの設定を調べてみると、実は簡単にagentの情報をログに出力できることが判明しました。
対象ファイルは
-httpd.conf
です。
うちの設定ファイルでは、変更対象箇所は514行目辺りにありました。
変更内容は以下の通りです。
□変更前
#CustomLog logs/agent_log agent
□変更後
CustomLog logs/agent_log agent
つまり、変更内容は、この行のコメントアウトをとっただけです笑
これで、apacheのログ出力ディレクトリに「''agent_log''」ってログファイルが出力されるようになります。
へ~、簡単。
そして、さっそくE71より当サイトにアクセスを実施。その結果のログは以下の通り。
SoftBank/1.0/705NK/NKJ001 Series60/3.0 Profile/MIDP-2.0 Configuration/CLDC-1.1
へ~、「''SoftBank''」って最初に入るんだ笑
***pukiwiki.ini.phpへの設定追加 [#o4996ae8]