今やWebサイトもただの情報公開サイトから,e-ビジネスのためのポータルサイトに変わりつつある。一般消費者向けのECサイトも,購入者へのインタラクティブなサービスを提供し,また電子出版のような情報サイトにもインタラクティブな機能が要求されてきている。
インタラクティブということは,従来の静的なHTMLによる記述ではなく,状況に応じた動的な情報が提供できることである。
今回は,インターネット上で非常に多く使われているLinuxやApacheなどのフリーソフトのサイトについて,さらにインタラクティブかつデータベースと連動可能なサーバサイド技術であるPHPの使われ方について,その動向を探ってみた。
サーバサイドのスクリプトの動向
今では,Web技術がシステムの基本になろうとしている。最初はインターネット上に情報を公開するために,見やすい書式という理由からホームページはHTMLで記述されていた。しかしインターネット利用そのものが,情報を見ることからビジネスへの利用に変わりつつある。この背景には,Web技術が単なるHTMLの表記だけではなく,CGIによる動的なプログラムによる応答が可能になったことがある。そしてこの動的な応答も,各種のスクリプトの登場によって,いろいろなことができるようになってきた。
今では,Webサイトではただの情報公開だけではなく,問い合わせの処理や見積もり,発注,またオンラインで物を売ることも行われている。
さらに,イントラネット/エクストラネットなどと呼ばれる,情報システム技術としてもWeb技術が利用されている。これからは,物の調達や得意先とのビジネスなどBtoBとしての利用も増えてくる。そうしたシステムもWeb技術を利用する時代である。そしてこれらはインタラクティブな技術を使いできあがってくる。
Webをサポートするスクリプトの流れ
スクリプトといわれても,いろいろなものが存在する。Webに対して最初に出現してきたのがCGIである。当初CGIとして使われていたのが,Perlである。しかしPerlでは処理が遅いということで,C言語などが使われていた。両者の大きな違いは,Perlはインタプリタ言語であるため,ソースコードを解析しながら実行する。これに対してC言語はコンパイラすることにより,呼び出された時には既に実行形式となっている。このため処理速度が要求される場合はコンパイラタイプのスクリプトを使用していた。これが第一次世代のインタラクティブなWebの開発環境であった。いずれもサーバ上で実行されるタイプであり,サーバサイド技術であった。
これに対して,Webのブラウザ側で実行するタイプのスクリプトが出てきた。それがJavaやJavaスクリプト,さらにはVBスクリプトである。これはいちいちサーバ側から結果を得るのでは遅くなってしまうようなインタラクティブな部分を,クライアント側のWebブラウザ上で実行しようというスクリプトであった。このような環境でホームページを作成していた時代に,さらにデータベースとの連携という必要性が出てきた。いわゆるECのような用途でコンテンツやクライアントの情報をデータベースに格納したり参照するシステムである。ここで要求されてきたのがサーバサイドスクリプト環境である。
当初Javaは装置に依存しないクライアント上で動作させることが目的であった。しかし,サーバサイドの必要性からJavaをサーバ側で動かすような仕組みができた。またマイクロソフトは,IISと呼ばれるマイクロソフトのWebサーバソフト上でVBスクリプトなどを動作させるASPと呼ばれる方式を始めた。
これらは,すべてデータベースなどバックエンドのシステム情報との連携をWebサーバ経由でWebブラウザに渡すための仕組みである。データベースをクライアントのブラウザで直接操作させるような危険やトラフィックなどを考慮して出てきた方式である。この結果,3層構造と呼ばれるクライアント,Webサーバ,データベースサーバという構成ができあがり,今非常に注目されているのはこのサーバサイドのスクリプト技術である。
現在,サーバサイドスクリプトとしては,インタプリタのタイプでは,Java,VB,PHPということになる。そしてコンパイラタイプではC/C++,Delphiが使われている。
PHPの特長
PHPと呼ばれるスクリプトは,Linux,Apacheというフリーソフト環境のWebシステムで利用され始めている。このようなフリーソフトの環境では,PHPおよびJavaが主に利用できるスクリプトである。この2つの大きな違いは,Javaはシステム開発が主な利用であるのに対して,PHPはHTMLの中の動的な部分を作り出すときに利用される点である。これはマイクロソフトのIISサーバを利用する場合にASPとしてVBスクリプトが利用されるのに似ている。SUNやIBMなどのUNIX環境や,Linuxなどのフリーソフト環境では,VBを利用できない。この場合は,JavaまたはPHPという選択になる。
PHPはベーシック的な言語であり,覚えるのが簡単である。このため,デザイナーでも簡単に記述してHTMLの中に埋め込むことが可能になる。これに対して,Javaは構造化言語であるため,デザイナーが簡単に使えるわけではなく,覚えるのは大変である。
またPHPはグラフィックも描くことができる。このようなスクリプトであるため,デザイナーが表現やインタラクティブな部分を作成するのに向いている言語である。
用途や環境に応じたスクリプトを利用する
VBとPHPは,どちらも比較的覚えるのが簡単なスクリプトである。これらの使い分けは,Webのサーバソフトの選択による。IISではASP(VB)が向いている。この場合,OSはWindowsNTまたはWindows2000サーバである。これに対して,SUNやIBMのUNIXのOS,またはフリーのLinuxなどのOS上でApacheをWebサーバとして利用する場合にはPHPが選択対象となる。
さらに,大規模な本格的なシステムの場合には,構造化された言語のJavaか,またはコンパイラ言語を利用する開発がサーバサイド技術になってくる。今後は,データベースからのデータアクセスや,XMLのようなデータを扱う場合には,サーバサイドによるスクリプト処理が必須になってくる。これらを利用することにより,ECサイトやデータベースマーケティング,ワンtoワンサイトなどのインタラクティブなWebサイトを構築できるようになる。
操作性や見せ方などは,クライアント側のスクリプト処理で行う。そしてデータを加工したり,選択したり,データベースから呼び出すクエリー処理などはサーバ側でのスクリプト処理となり,それぞれ目的に応じた利用方法になる。
これからは,WebサーバではXMLのデータを扱うのが当たり前になる。そのような場合,XMLのデータへの処理をサーバ側かクライアント側かで分かれ,見せ方であればクライアント,アクセスや変換であればサーバで,それに見合ったスクリプト処理が求められるようになる。そのような状況からPHPもこれからの選択肢に入ってくる時代になろうとしている。
(通信&メディア研究会)
★Web関連セミナーのお知らせ:
通信&メディア研究会では,きたる5/31(木)に 付加価値の高いWebサイト構築セミナー を行います。
サイト構築ためのツールの位置付け,その具体的構築事例を紹介しながら,どんなツールを選べば,顧客の満足が得らる付加価値のあるサイトを構築できるか,個々の案件への対応を考えます。どうぞ奮ってご参加ください。
2001/05/09 00:00:00