Home > Archives > 2007-02

2007-02

Mac OS X Tigerでリバースプロキシ

TOMCATを入れたのはいいけれど、バージョンの関係で今入れてるApacheと連携することができない。ApacheのV2をいれてコネクターをかければいいんだけど、V1.3のままでいきたいのですわ。
とりあえずhttp://localhost:8080/でTOMさんが動いているということは、V1.3のままならばポート番号8080でアクセス可能ということなのか?

ならばリバースプロキシでのフォワードで対応

リバースプロキシ

特定のサーバの代理として、そのサーバへの要求を中継するプロキシサーバ。代行されているサーバアクセスしようとしたユーザは全てリバースプロキシを経由することになるため、サーバが直接アクセスを受けることはなくなる。

 中継時にパケットの内容やURLをスキャンするような機能を組み込めば、セキュリティが強化される。

 また、特にアクセスの多いコンテンツキャッシュ保存することで高速化したり、パスワード認証によってアクセス制限をするなどの機能を持っていることも多い。

 社内LANなどの内部ネットワークインターネットとの接点に置かれ、外部からWebサーバなどネットワーク内部へのアクセスを中継することもあるが、その様子が通常のプロキシ(フォワードプロキシ)の「内部から外部へのアクセスを中継する」動作と反対であることが「リバース」の由来であると言われている。

e-wordsより


目標は
http://hogehoge
.human.waseda.ac.jp/tomcat/
でTOMCATのindexページが表示されればよい。

ポート番号80での標準的なHTTPで
http://hogehoge
.human.waseda.ac.jp/tomcat/
にアクセスすると、リバースプロキシがはたらいて
http://hogehoge.human.waseda.ac.jp:8080/
にフォーワードされたものが返ってくるというものだ。
内部的な処理のため、あくまでクライアント側はポータ番号80での通信となる。

どこをいじるのか。やはり

etc/httpd/httpd.conf

でしょうね。
httpd.confの中の次の二つをコメントアウトします。

LoadModule proxy_module libexec/httpd/libproxy.soAddModule mod_proxy.c

これでApacheのProxyサーバー機能が有効となりました。

最後に、パスの指定と接続先を設定します。
httpd.confの下部開いているところに

ProxyPass /tomcat/ http://hogehoge.human.waseda.ac.jp:8080/

を書きます。
これでもいいようです。

<ifmodule>
ProxyPass /tomcat/ http://hogehoge.human.waseda.ac.jp:8080/
</ifmodule>

Apachを再起動させたら、
http://hogehoge.human.waseda.ac.jp/tomcat/
でトムキャットの動いているページを操作することができます。

Tomcatでフト思ったのだが、

そういえば、Tomcatってハイスクール!奇面組にでてくる出瀬潔(しゅっせ きよし)にそっくりだな。
出瀬潔は右から二人目。
画像ファイル "http://www.geektimes.com/images/tomcat.png" は壊れているため、表示できませんでした。
http://nashida.sienta.jp/usr/nashida/doumeitop%5B1%5D.jpg

Mac osx tiger でTomcat5.5

Tomcatといっても戦闘機ではありません。
このネコの方です。
画像ファイル "http://www.geektimes.com/images/tomcat.png" は壊れているため、表示できませんでした。
現在NetbeansでのWebアプリケーション開発を行っていますが、本番環境での実装も並行してやっていこうと思い、研究室のサーバー(Mac os x tiger)にTom猫さんをぶち込むことにしました。

■ダウンロード
http://tomcat.apache.org/download-55.cgi
から5.5.xのCoreパッケージapache-tomcat-5.5.20.tar.gzをダウンロード&展開

そのフォルダをtomcatにでもリネームしてusr/localにぶち込みます。

■設定と起動
トムさんを起動されるには、起動シェルに環境変数を設定する必要があります。
設定せずに起動シェルを実行した場合には、JAVA_HOMEが設定されていませんという趣旨のメッセージが表示されます。
ので、これで設定。

export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home

これでJAVAの場所が設定されました。あとはトムを起動させればとりあえず動きます。

$ /usr/local/tomcat/bin/startup.sh

Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home

このように表示されればOKです。あとはWebブラウザにて、http://localhost:8080/を指定し、Apache Tomcat/5.5.20の画面が表示されればOKです。

*上記URLでサーバにアクセスできない。
起動シェルは成功したのに、ブラウザに「接続できませんでした。」などと表示された場合、トムさんが動いているようで動いていない可能性が大です。

/usr/local/tomcat/bin/shutdawn.sh

で起動停止させてみましょう。
こんなメッセージがでると思います。

This release of Apache Tomcat was packaged to run on J2SE 5.0

JDK5.0が入ってないとTomcat5.5は動きません。

java -version

で調べてみてください。
JDK5.0のインストールはこちらから。

http://www.apple.com/jp/ftp-info/reference/j2se50release4ppc.html

Tiger 10.4.5以下を使っている人はそもそもJDK5.0が入らないので、OSを10.4.5以上にあげましょう。

Web 2.0 … The Machine is Us/ing Us

Web 2.0 … The Machine is Us/ing Us
カンザス州立大学のMichael Weschという人が創ったVTR。

Webの歴史をクリエイティブに表現しています。
いやテキスト、コンテキストの歴史でもあるのか。

XMLやFolksonomyというのは、まさにwe are teaching the machine.
Webの構造化はつまるところ、人類の再構造化に関係してくる。
The machine is us.
距離的に離れた人というのは、Webの世界では存在しないわけで、均一でフラットな世界では再発見すべきことがたくさんある。

Web2.0 is linking people

ネットは広大だわ…

NetBeans5.5でStruts開発(1)

IDE(総合開発環境)であるNetBeansは現在5.5がリリースされています。拡張性はもちろんオープンソースであるEclipseの方が圧倒的ですが、NetBeansはWEBアプリケーション開発におけるあれこれが、はじめから武装されています。

この画像を見る限り、頼もしいツールであることは間違いないですね。

なぜ僕がこのIDEを使おうかと思ったのかは、勉強がてら、あとリクルート×SUNのMashup Award 2ndに出場する際、NetBeansを使うと加点されるからです。記念出場みたいなものなので加点されても意味ないかもしれませんが、Eclipseのよいところもまた再発見できるかと思っています。

NetBeansのインストールは簡単です。 ここから最新版をダウンロードで終わりです。 http://www.netbeans.org/index_ja.html 今回はプロジェクトとスケルトンの作成まで解説します。
NetBeansを立ち上げるとスタートガイドなどが表示されますが、これは無視しましょう。

メインメニューにあるファイル→新規プロジェクトを選択します。

もちろんWebアプリケーションを選択します。

次へ

プロジェクト名を入力します。アプリケーションの名前にでもしておきましょう。

次へ

ここでやっとStrutsという単語がでてきました。Strutsを選択して完了です。
これでアプリのスケルトンが生成されました。

index.jspはこのようになっています。

<%@page contentType="text/html"%>
<%@page pageEncoding=”UTF-8″%>
<%– The taglib directive below imports the JSTL library. If you uncomment it, you must also add the JSTL library to the project. The Add Library… action on Libraries node in Projects view can be used to add the JSTL 1.1 library. –%>
<%– <%@taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c”%>
–%>

<meta equiv=”Content-Type” content=”text/html; charset=UTF-8″>
<title>JSP Page</title>

<h1>JSP Page</h1>

<a href=”http://www2.blogger.com/Welcome.do”>Struts Welcome Page</a>

<%– This example uses JSTL, uncomment the taglib directive above. To test, display the page like this: index.jsp?sayHello=true&name=Murphy –%>
<%– <c:if test=”${param.sayHello}”>
<!– Let’s welcome the user ${param.name} –>
Hello ${param.name}!
</c:if>
–%>

「主プロジェクトを実行」というボタンを押すと、ブラウザがたちあがり、アプリケーションがTomcatとservletで動いているのが確認できると思います。

簡単ですね。

移転しました。

ブログを移転しました。

最近、生活環境が変わりつつあるので、新しい節目ということで。。。

以前のブログもREAL GOLDというタイトルなんですが、前のはあまり全面にでてなかったので気づかなかった人もいるでしょう。そんな微炭酸なタイトルです。

しかし、僕のブログ=REAL GOLDということは僕の両親すら知っている事実です。

今回の移転はなにを意味するのか?

女の子が気分かえるために髪を切るようなもの
前のブログにスパム系の投稿がやたら多かったから
Bloggerの新リリースが気になって使ってみたら意外とよかったから
両親が見てることがこっぱずかしいから
前回のアカウントがfukuyamakotoじゃなかったから
飲んでて新しい友達が到着したから別の飲み屋へ移動するようなもの

どれが答えでしょうか?

答えはすべてです。

すべてというのは気持ちのよい答えですね。

最近、自分の生活環境が変わってきました。
なんというか、staticなライフスペースを与えられたって感じで、基本的にそこに常駐しています。ここにいれば時間や他の介入も少なく、勉強や研究、思考を継続できます。一応貸しオフィス的な研究室なんですけど、とにかく時間も気にしなくていいから集中できるんだよ。誰もいないし。
自分のホームポジションを決めるっていいよね。
決まっていれば、

家は休むところ
バイト先は働くところ
学校は授業を受けるところ
グランドはラグビーするところ
キャバクラはお酒を飲むところ

てな感じで、役割も明確になる。
そーなったら家で勉強したり、仕事したりってのが少なくなる。

自分の部屋が崩壊してるからこんなことになってんだけれども、掃除してもまた汚くするだけで生産性のない生活が目に見えているからさ。

そんなこんなで、集中して作業できる環境を見つけたのだから、なにか創っていきたいですよね。このブログにももうちょっと価値のあることを書いていこうと思っています。

とりあえず学生生活はあと2年あるからな。
今後ともよろしくお願いします。

Home > Archives > 2007-02

Search
Feeds
Meta

Return to page top