![]() | 机上ラボ > ターミナルサーバー活用概論 |
クローズドWEB開発環境をフレキシブルに公開する |
![]() | 机上ラボ > ターミナルサーバー活用概論 |
クローズドWEB開発環境をフレキシブルに公開する |

|
■.クローズド環境側 1.ブラウザで、確認できるWeb環境 (Apache,IIS,Tomcat,WebShere,GlassFish,IHS...なんでも) 2.sshクライアント(PuTTY,TeraTermSSH等) ■.公開側サーバー(ターミナルサーバー)側 1.SSH サーバー 2.Apache サーバー 3.mod_proxy(Apache標準装備) 4.mod_filter(Apache標準装備) 5.グローバルIPや接続可能なインフラ (要は、外部から接続できる環境) |

例)Tomcatの動的ページを公開する例![]() |

|
まず、各通信ポート(8080)で確認できる開発環境で通信面を整えます。
openssh のコマンドラインを例に見てみましょう。 ・開発環境からターミナルサーバーへポートフォワーディング接続 ssh -R 8080:localhost:8080 ターミナルサーバーHost名これで、開発環境→ターミナルサーバーへの接続は確保されました。 |

|
次に、ターミナルサーバー側Apacheにて以下の設定を行います。 ・ターミナルサーバー側 httpd.conf(適切な場所に追記) site1というコンテキストルートで開発していた場合、そのままsite1という名のコンテキストで公開する場合です。 ターミナルサーバーのローカルホストに通信が転送された事を前提にApache側でも転送を行います。 上記設定で公開を許可している為、不特定多数の方に見られる環境であれば、基本認証をかけておきましょう。 |

|
公開側ドメインや、コンテキストをカスタマイズしていた場合、サイト上のリンク先が開発環境に向いてしまいます。 その場合、動的コンテンツの場合、アプリケーションの設定を変えれば済む話ですが、開発からも見たい。もしくは切り替えるのが面倒な場合、Apacheのfilterモジュールを利用し、出力ストリームを置換してしまいましょう。 ・ターミナルサーバー側 httpd.conf(適切な場所に追記) 「urlmod」というフィルタを定義しています。intypeはコンテンツタイプ。通常のhtmlであれば、「text/html」となります。cmdでサーバーコマンドを実行し、出力結果をそのまま出力するようにできています。 サーバー側でコンバートするスクリプトや、アプリケーションを作れば、いろんなことができそうですね・・ |