ここで使用している行事案内に使っているのが、CGI-design制作による、携帯・PC兼用スケージュールボード“sche32.cgi”です。このCGIは、全て設置と設定が非常に簡単で、スケジュールの投稿も分かりやすい為、導入を決めました。特に動作が軽いのが助かっています。この会社のCGIは、FREE版も多数容易されていて、設定が全てブラウザ上から出来るので初心者には、お勧めです。
ところが、テスト段階で判明したのが「携帯電話のFOMAからアクセスできない」ことです。 携帯電話は、ご存じのようにメーカー・機種によって表示方法が異なるため、携帯用ホームページを作成するためには、各携帯の使用に会わせたHTMLの書き出しを行う必要があります。ここでどの携帯からアクセスしてきたかを判断する方法として UserAgent を使用する方法が一般的です。詳細は「モバイルCGI研究所」をご覧下さい。
ところが、私のIISサーバーでは、FOMAからアクセスすると、「接続先のサーバは現在ご利用できません(502)Your request cannot be processed.(502)」と表示されます。
これは、IISサーバーだけに起きる現象のようで、IISは、ヘッダにContents-Lengthの書き出しを行わないとFOMAからのアクセスが出来ないようです。CDIプログラムに次の一行を書き加えることで解決しました。
print "Content-Length: ",length($htm),"\n\n";実際の書き加えには、制作者の著作権に触れるため、許可を得る必要があります。
現在IISサーバーでも、i-mode、FOMA、EzWeb、vodafone、の各モバイルで動作確認が取れました。
コメント