『携帯サイトをつくろう.jp』システム仕様
『携帯サイトをつくろう.jp』の仕様や制限について説明します。
動作環境(開発言語、対応ブラウザ)
『携帯サイトをつくろう.jp』は以下の環境で動作しています。
- 開発言語:ASP.NET2.0(c#)+ AJAX
- サーバ :Windows2003Server
- DBMS :SQL Server2005
『携帯サイトをつくろう.jp』を利用して携帯サイトが作成できるブラウザは以下の通りです。
- Internet Explorer 6.0以降(7.0を推奨)
携帯コンテンツ作成機能以外であれば、FirefoxやOperaでも対応しているのですが、コンテンツ作成画面はAJAX(JavaScript)を駆使しており一部のスクリプトをクロスブラウザ対応ができていないのです。
具体的に言えば、ドラッグ&ドロップ機能と流れ文字(スクリプトからの動的Marqueeエレメント作成処理)がFirefoxで対応できていません。
技術的には対応可能なのでユーザ数が伸びれば、Firefox対応も行いたいと考えています。
尚、IEは7の方がスクリプトが軽快に動作しますので推奨しています。
利用できる絵文字種類
携帯コンテンツデータの格納方法
一般的にWEBコンテンツはHTMLの形式として作成されます。これは携帯コンテンツも例外ではありません。
携帯サイト作成システムの仕組みと歴史でも説明しましたが、昨今の携帯サイト作成システムは内部的にCHTML(i-mod対応HTML)で携帯サイトデータを管理しています。
本システムでも同様にCHTMLで携帯コンテンツを出力しているのですが、管理方法は異なります。
CHTMLのデータを静的に内部で管理する場合、アクセスされたキャリア毎にCHTMLの内容を書き換える事が難しくなります。
CHTMLの書換えの必要の有無は利用するタグにより異なりますが、基本的にauとSoftBankではCHTMLをゲートウェイサーバでそれぞれの専用言語に変換されます。
この変換仕様に該当しない情報(タグの属性情報部分が該当する事が多いです)を利用した場合、当然のことながらauやSoftBankでは表示が異なる事があります。(エラーになる場合もあります)
このようにCHTMLデータ(DoCoMo端末で正常に表示されるコンテンツデータ)をシステムで管理し、DoCoMo以外のキャリアからアクセスされた際にも、このCHTMLデータを変換することなく出力するようなシステムでは上記のような不具合が発生する事があるのです。
私も沢山の携帯サイト構築システムを調べましたが、殆どがこの形式です。特にコンテンツ作成時にHTMLを出力するシステムは完全にこれですね。
静的にCHTMLデータを保存するシステム(コンテンツ作成時にHTMLを出力するシステム)でもキャリア毎に変換する必要のある絵文字情報などは独自のタグ(例:<emoji id=1>)などを作成してこの部分のみを変換するようにしています。
上記のようにCHTMLを静的に管理した場合、3キャリア対応できる範囲がゲートウェイサーバの仕様に依存してしまう為、本システムでは以下のような方法でシステムを構成しました。
- コンテンツを構成するデータをパーツに分類してそれぞれに対応したクラスを用意する。
- パーツはリンクデータクラス、画像データクラス、文字データクラス、ページデータクラス等を用意し、それぞれの集合によりコンテンツを構成する。
- パーツクラス(例:画像データクラス)が自データに対応したHTMLを出力する。(出力の際にキャリア種類に応じて出力を行う)
- コンテンツデータは各データクラスの集合であり、データの保存はクラスのシリアライズを行う事でバイナリデータとして保存する。
- データの読み込み(携帯コンテンツの出力やコンテンツデータの編集時)にはバイナリデータをクラスデータにデシリアライズする。
シリアライズ、デシリアライズはオブジェクト指向系言語を使った事がない人には難しいかもしれませんが、要するにコンテンツのデータをバイナリデータとして管理するという事です。
上記の方法で管理する利点は、ウィルス等でコンテンツデータを書き換えられる可能性が非常に少ない事です。
それ以上にコンテンツデータ管理がスマートであり、キャリア毎に出力するデータを柔軟に変更する事ができます。
『携帯サイトをつくろう.jp』で作成できるコンテンツのデータは全て上記のようなクラスにマッピングされているのです。
尚、携帯サイトを構成する為の上記クラスは別途フレームワーク化されているので、本システム以外にも利用できるように開発されています。
URLの構成及びURL書換え方法
『携帯サイトをつくろう.jp』で利用できるURLは以下のようになっています。
http://m.mysite-is.jp/希望ユーザID/コンテンツ名.aspx
プログラム経験がある人はご存知かと思いますが、上記のURLの拡張子(aspx)はASP.NETで作成されるサーバページを意味します。
それでは作成された携帯コンテンツは全てASP.NETのサーバページで作成されているのでしょうか?
実は違うのです。『携帯サイトを作ろう.jp』ではURLの書換え機能を利用しているのです。
つまり、アクセスされたURLのページに該当する物理ファイルは存在せず、アクセスURLより対象データを解析し、別URLに書き換えて内部でアクセスしているのです。
処理の流れは以下の通りです。
- アクセスURLより『希望ユーザID』と『コンテンツ名』を取得し、これらデータより対象のデータを判別する。
- 対象データを特定した後に内部用のURLに変換し、そのURLにアクセスする。
- 対象のデータをDBより抽出して、コンテンツ情報として返還する。
上記のような機構になっているので、コンテンツの拡張子はaspxでなくても全く問題ないのです。
SEOの観点から考えると拡張子をhtmにしておけば良かった・・・と思っています。
システムの構造を解説しましたが、これを悪用してサーバにアクセスしないで下さいね。
アクセスした方のIPアドレス、ドメイン等は全て記録されています。
携帯サイト動作確認方法
作成した携帯サイトの確認は実機でも行いますが、通常シュミレータを利用して作成したコンテンツの内容を確認します。
シュミレータとは各キャリアの動作をソフトウェ上で実現させるソフトです。
例えばDoCoMoのシュミレータを利用すると、DoCoMo用のコンテンツを確認する事ができます。
DoCoMo i-mode HTMLシュミレータⅡ
au Openwave SDK 6.2K
SoftBank ウェブコンテンツビューア
DoCoMo,SoftBankのシュミレータは安定しており、コンテンツの表示も実機に近いですが、auのシュミレータは非常にチープです。
Openwaveで表示できる絵文字はタイプBまでとかなり旧機種の構成となっていますが、ユーザエージェントを自由に変更できるという利点もあります。
ページの先頭に戻る