4Dのローカルモード、リモートモード、および4D ServerにはWebサーバーエンジンがあります。このWebサーバーエンジンを使用して、4DデータベースまたはあらゆるタイプのHTMLページを Web上に公開することができます。4DのWebサーバーエンジンには以下のような主な特徴があります。
- 簡単に公開
好きな時にデータベースの公開をWeb上で開始または停止することができます。これを実行するには、メニューコマンドを選択、またはランゲージコマンドを実行するだけです。
- 特殊タグとURLの使用
4DのWebサーバーはユーザアクションとの相互作用を可能にする多くのメカニズムを提供しています。以下のような特別な機能があります。
- Webページに含める特別なタグ。これはWebページがブラウザーに送られる際、Webサーバーによって処理を開始するためのものです。
- あらゆるアクションを実行するために4Dの呼び出しを可能にする特殊なURL。
- これらのURLをフォームアクションとして使用して、ユーザがHTMLフォームを投稿した際、処理を始動させます。
- ユーザーセッションの管理
4D Webサーバーにはcookieを使用する、完全に自動化されたWebセッション (ユーザーセッション) 管理機能があります。 - アクセスセキュリティ
複数の自動設定オプションを使用すると、Webブラウザーに特別なアクセス権を与えたり、4Dに統合されたパスワードシステムを使用することが可能になります。"一般Webユーザ" を定義して、データベース内でのアクセス管理を簡略化できます。
On Web Authenticationデータベースメソッドを用て、Webサーバーがリクエストを処理する前に、そのリクエストを評価できます。更にデフォルトのHTMLルートフォルダーを定義する機能はディスク上のファイルへのアクセスを制限します。
最後に、Web経由での実行を許可するプロジェクトメソッドは個別に指定しなくてはなりません。
- SSL接続
4DのWebサーバーは、SSLプロトコル (Secured Socket Layer) を通じて、ブラウザーと保護モードで通信できます。ほとんどのWebブラウザーと互換性のあるこのプロトコルは送信者と受信者を認証し、交換された情報の機密性と整合性を保証します。
- インターネットフォーマットの拡張サポート
4DのWebサーバーは、HTTP/1.1 と互換性があり、XMLドキュメントとWML (Wireless Markup Language) テクノロジーをサポートしています。
また4D Webサーバーはzgip圧縮もサポートしています。Webサーバーとクライアント間でネゴシエーションが行われた後、パフォーマンス向上のため、可能であればデータの圧縮が行われます。 - データベースを同時に操作する
- 4DのローカルモードとWeb
4Dのローカルモードを使用して4DのデータベースをWeb上で公開する場合、以下のことを同時に行えます。
- 4Dでデータベースをローカルで使用する。
- Webブラウザーを用いてデータベースへ接続する。
- 4DサーバーとWeb
4Dサーバーを使用して4DのデータベースをWeb上で公開する場合、以下を使用して4Dのデータベースへの接続とその処理を同時に行えます。
- 4DクライアントとWeb
Web上で4Dのデータベースが4Dクライアントによって公開されている場合、4Dのデータベースへ接続し、以下を通じて同時に使用します。
- 4Dリモートマシン経由
- Web ブラウザー経由。この場合、データベースが4D Serverで公開されていると、Webブラウザーは4Dクライアントマシン経由または4D Server経由でその公開されているデータベースへ接続できます。更に、異なるデータへのアクセスモードが利用できます (パブリック、アドミニストレーションなど) 。
4D Webサーバーの基本的なメカニズムはリモートモードの4Dでも同様に使用されています。コマンドがローカルモードの4D、4D Server、あるいはリモートモードの4Dで実行されようとも、ランゲージコマンドの操作は通常同じです。ポイントはコマンドはそれが実行されるマシンのWebサイトに適用されるということです。Execute on server / EXECUTE ON CLIENTコマンドを使用してこれを管理する必要があります。
- 4Dクライアントでのロードバランス:
4DマシンのリモートモードはWebサーバーとして使用でき、ロードバランサーを用いてダイナミックなWebサーバーを設定することができます。これにより、特に以下を含む、広範囲に及ぶ開発が可能になります。
- すべての4DのWebサーバーにインストールされているWebサイトのミラーを利用して、4DのWebサーバーのパフォーマンスを最適化するためにロードバランスシステムを設定することができます。(ハードウェアーまたはソフトウェアーによる) ロードバランサーがカレントロードに基づいて、クライアントマシンにリクエストを送ります。
- フォールトトレランスのWebサーバー設定。4DのWebサイトは2つ以上の4Dクライアントマシンでミラーされています。1つの4D Webサーバーが故障しても、他のWebサーバーが機能します。
- 例えばリクエスト元に応じて同じデータで異なる表示を作成する。企業のネットワーク内で、保護された4Dクライアントマシン上のWebサーバーはイント ラネットのリクエストを供給することができます。そしてファイアーウォールの向こう側に設置されているほかのクライアントマシン上のWebサーバーはイン ターネットからのリクエストに対応します。
- 異なる4Dクライアントマシン上のWebサーバー間でタスクを配信します。4DのWebサーバーの1つはSOAPリクエストを管理し、もう一方のWebサーバーは標準のリクエストを処理します。