« 2007年7月 | トップページ | 2007年9月 »

2007年8月の7件の記事

2007年8月31日 (金)

Subversion + Apache2

1年半ほど前から、ソース管理には主にSubversionを使っている。今日はSubversionと久々に格闘しましたという話。やったことは以下のとおり。

  1. Windows 2003 Server にSubversion 1.4.5 をインストール
  2. Apache2.2が入っていたが、これを2.0におとして入れなおし
  3. Apache設定
  4. EclipseプラグインのSubversiveと格闘

まず、Apache2.2用のSVN1.4.5をインストールしようとおもったのだが、なぜかダウンロードできず。Apache2.0用のものは落とせたので、しょうがないのでApacheのバージョンを落とすことにした。

その後のApache設定でつまづき、Subversiveも使い勝手がよくわからず、格闘することとなった。まあ、ここ数年の仕事ではApache設定とか、わからぬままいじることが多かったし、今後ともApacheは使うことになるので、ちょっと基礎体力として覚えておこうと思って、「動けばいいや」ではなく、「なぜこうする必要があるのか」を考えながらちゃんと取り組んでみた。

今日やった失敗:

<Location /svn> というセクション定義と

Alias /svn "D:/svn/repos"
<Directory "D:/svn/repos"> という定義を両方書いてしまった結果、リポジトリがブラウザから見えるのにEclipseから見ようとすると 301 Moved Permanently なんていうResponseが返ってくる現象に遭遇して、20分ほど悩んでしまった。

http://subversion.tigris.org/faq.html#http-301-error

まあ、Apacheの設定ファイルの読み方・書き方をいい加減な知識でごまかし続けてきたツケですね。以下を熟読しなきゃです。

http://httpd.apache.org/docs/2.0/ja/sections.html

上記には、ファイルシステム上のオブジェクトを扱う際はDirectoryセクションを使えって書いてあるけど、今回/svnでリポジトリアクセスしたいという要件の場合は、話が別な気がした。なぜなら、/svnで直接リポジトリの中のファイルにアクセスするわけではなく、Subversionのレイヤを通るからだ。ファイルシステム上の場所を以下のように指定しているのは、あくまでSubversionのレイヤであってApacheのレイヤではないということ。

SVNParentPath "D:/svn/repos"

だからこの場合はLocationセクションを使うのが正解っぽい。

 

2007年8月28日 (火)

Tomcat + WTP殿: 開発時に確認のたび毎回デプロイなんかしたくないっす!

Eclipse 3.2 + WTP + Tomcat5.5を使ってものを作っていて、ひとつ困ったことが起こった。

昔Tomcat4系+エディタなんかで、ごりごりと物を作っていた。当時はデプロイなんていう概念も知らず、JSPをいじって確認すると、その場でコンパイルが走って変更がブラウザから見える。PERLでCGIを作っているのと同じようなサクサクとしたターンアラウンドタイムでものがつくれていた。

それが、Tomcat5系になってからというもの話が変わった。なんだか、デフォルト設定だとJSPをいじっても反映されないだとか、勝手に再起動しちゃうなんていうことになり、いやだなぁということになったのだ。約2-3年前の話だ。

で、今ここにきてまた、なんだか似たような状況になって困ったのだ。

AJAXなものづくりってことで、JavaScriptをかなり本格的に使っている。ただ、サーバサイドはJava+DBなので、WTP+Tomcat5.5なんていう環境でものをつくっていたわけだ。それが設定をいじっているうちに、JavaScriptをちょこっといじっただけで、

  1. 勝手にサーバ再起動されるか、
  2. 書き換えたJSが反映されないか

という究極の選択状態になってしまったのだ。 もちろんやりたいのは、以下である。

  1. JSを書き換えたら、サーバ再起動せずに確認できる。

これは、本当に困る。というかストレスがたまりまくる。というか、眠くなる。。というわけで、解決せねばということでいろいろ調べて、考えて、結局以下のようにしてとりあえず問題を解決したのでこれを記しておく。

  1. Eclipse 上、Serversプロジェクトからみえるserver.xmlの中のContext要素を書き換える。
  2. DocBase属性に、ワークスペース上プロジェクトの絶対パスを書き、
  3. source属性はばっさり削除
  4. reloadable属性はtrue
  5. サーバの設定としては、Run directly from workspece チェックをはずし
  6. automatic Publishingは never publish automatically を選択。

あれこれ試行錯誤して、上記で動いたということなのだが、なぜこれでそうなるのか、これがやるべき方法なのかはよくわからない。

少なくとも、WTPにはpublishという概念があるようで、これはつまり内部的にデプロイしているってことのように見える。ワークスペースの .metadata/.plugins/org.eclipse.wst.server.core/の中にpublish関連のいろいろな設定XMLがあって、そこのtmp/の中にpublishされたものが入っていた気がする。

デプロイされたものを確認するというプロセスだとどうしても開発時(特にフロントの開発)にはターンアラウンドタイムが長くなる。だから、自分的要件としては、デプロイせずに、編集しているワークスペース上のファイルをそのまま動かす必要があったわけだ。

まあ、今思えばわかりやすくクリアーな要件で「そうすりゃいいじゃん」なわけだけど、上記要件を認識するまでに結構時間がかかってしまった。今は普通にこう思う「デプロイして確認なんてやってられっか!」(少なくとも、クラスロード時に、いろいろhibernateの設定とか読み込んで時間がかかるシステムのフロント部分をいじっているときは)

あと、server.xmlのContext要素の関する以下情報は覚えておこうとおもう。

http://tomcat.apache.org/tomcat-5.5-doc/config/context.html

http://www.limy.org/program/tomcat/server_xml5_5.html

docBase属性 アプリルートディレクトリ(またはwarファイル)の指定。 絶対パスか、外側のHost要素appBase属性からの相対パスで指定する。
reloadable属性 Set to true if you want Catalina to monitor classes in /WEB-INF/classes/ and /WEB-INF/lib for changes, and automatically reload the web application if a change is detected.


削除したsource属性は何なのかは謎(上記に書いてない)。 WTPで普通に設定すると、org.eclipse.jst.j2ee.server:[プロジェクト名]という文字列が入っていた。

想像するに、Eclipse WTPがGUI側での設定を反映する上での紐付けのために勝手につけている「勝手属性」なんじゃないかと思う。

debug属性というのも設定可能なように見えたが、これはTomcatの出力するログレベルを変えるための属性のようで、関係なかった。しかも、5.5以降ではそんなものを指定してもしょうがないようだ。(log4Jで制御)

2007年8月26日 (日)

ビリーズブートキャンプ

オリンピックで買っちゃったよーん。
ビリーズブートキャンプ・エリートとやらを9800円で。

ネットで探して買えばもっと安いんだろうけどさ、
まあいいのさ。勢いがなきゃこういうものは買えんから。

ちなみに、オリンピックは8月1日から2時間までは駐車場無料になってる。

えらいね!
今後はオリンピックも買い物ローテーションに入れるかね。

2007年8月18日 (土)

御殿場アウトレット

御殿場のアウトレットにいった。

いつもはショッピングばっかりで下から見るだけだった観覧車に
はじめてのりましたよ。

買い物っていうかリフレッシュに来ているので、結構ヒットだった。


帰り道、弥生台のバーミヤンで晩御飯。

 ・北京ダック
 ・水餃子
 ・酢豚
 ・白かゆ
 ・ライス

税込計2310円なり。

2007年8月12日 (日)

滝山団地

東京・東久留米にある実家に帰った。
いろいろ用事をすませて、3時ごろ、いつもどおり、
「さて、どこかにおでかけしようか。」
ということで、どこかに行く計画が持ち上がった。

両親と妹と私の4人。
うだうだと、どこにするかだとか、どこもいきたくないだ、
そんな話で時間が過ぎ、5時ごろになって、我々はやっと家を出た。

行き先はまだ決まっていない。
運転者は自分だったが、コックリさんのような感じで
自然と行き先は決まるものだ。

車を動かしだした結果、今日は車は何気なく滝山団地に向かい、
これまた、何気なく、我々はそこを散歩することになった。

最近母が誰かから聞いて図書館で借りてきた
滝山コミューン1974という本の
存在が働いたのだろう。

滝山団地は、自分が0歳~6歳ごろまでをすごした場所。
私にとっても、両親にとっても、妹にとっても、
30年前の人生の舞台そのものであった、そんな場所だ。

あきらくん、あけみちゃん、
るみちゃん、こばらくん。・・・
当時の友達の思い出もある。

公園の柵やら藤棚やら・・
一つ一つの遊具やオブジェにも思い出がある。

自分はまだ幼稚園にもいってない時代。
両親は、今の自分と同じぐらいの年だった(母はもっと若かった)。

むかし遊んだ公園や、幼稚園入園前の1年間、
毎週火曜日に通った幼児教室(西地区集会所?っていうのかな?)。
そんなものを見ながら、4人とも30年前の光景を思い出していた。

自分は、当時の団地って、今のマンションみたいなもの
だったんだろうなぁって思いながら、
横浜東戸塚の自分の住むマンションを対比させて考えたりした。

30年後、今のマンションもこんな風になるのかな・・
だとか、そんな風に。


この場所も、ニュータウンがオールドタウンになるっていう話と
無縁ではないと聞いている。(前述の本にも書いてあった)
子供の数も当時の3分の1以下になっているそうだ。

時間帯も夕暮れ時で、それもあるのだろうが、
妹が、がらんと、だれもいない滑り台をさして、
「私の記憶だと、あの滑り台、いつも誰かがいて、
  順番待ちで、ほとんど滑れなかったもんね~」
といったのが印象的だった。

言われてみるとたしかに、公園にいけば必ずだれか
遊び相手がいて、友達のお母さんやらなにやら、
色々な人がなんとなくそこにいた。

あのころの団地って、子供にとって、
いい世界だったんじゃないかな。

今は子育て人口は減ってしまったかもしれないけど、
バリエーション豊かな公園群や、広い歩行者用プロムナード、
あふれる緑、そういうインフラは健在だ。


0歳~6歳ぐらいの子供だった自分にとって、
あの空間って、それこそそれが世界だったし、
それは、十分に広く、十分に安全で、
十分に刺激に満ちた世界だったなと思う。


そんな団地という空間に感謝したり、
そういう場所を選んでくれた両親に感謝したり、
そんな良い散歩ができたと思う。


2007年8月11日 (土)

緑園都市お好み焼き

緑園都市でお好み焼きをたべた。

いつも、お好み焼きというと、南本宿の
「くまさん」というところにいっていたが、
何事も二重化しておこうという考えのもと、
新しい店舗開拓を行った次第。

 (お好み焼きが突然食べたくなったとき、
  たとえ片方が定休日や臨時休業や
  つぶれたとかそういう事態でも、
  問題なくお好み焼きにありつけるようにするため。)

店の名前は楽喜家。
 #ラッキーハウスと読むらしい。

お値段お手ごろ、量たっぷり。
2000円以上たべたら駐車場無料。

大人二人でも、お好み焼き(豚)
焼きそば(豚)なんてのを頼むだけでは
2000円にはならないし、かつ、
それだけ食べると腹いっぱいになってしまうので、
注意が必要だと感じた。

それと、席が狭い+結構店があいているのに、
隣に客がいる狭い席に通されたこともマイナス
要素となり、評価はくまさんより下となった。 
 (店のもてなしの心の有無って
  こういう形であらわれちゃうんだろうねぇ・・)

ということで、通常使うプリンターならぬ
通常使うお好み焼き屋としては、
南本宿の「くまさん」のままとなりました。

 #くまさんは駐車場無料なので、
 #精神的になんか楽チン
 #それと、接客上の不愉快な想いも
 #これまで特になし。

以上。

2007年8月 7日 (火)

UNIXお勉強

部署を異動する日がもうすぐってことで、
自分が管理しているかもしれない社内のサーバ
に久々にアクセスした。

このマシン、3年前まで所属していたチームのもので、
私専用にいいように使っていいよと先輩が託してくれたものである。
この3年ほど、ほとんどまったくいじっていなった。

ログインすると、SunOS 5.7 とでる。

今仕事で使ってるマシンはSunOS 5.9とでてくるので
まあ古いマシンなわけだ。

いざ、ちょっと眺めてみようと思うと、・・

むむ・・ シェルがcshだ。 
つかいづれー
bashがいいー

でも、なんか懐かしい資料がたくさん転がってて
いい感じだぞー。

いいな、このマシン、
もうちょっと遊ばしてもらおう。
でも、bash がいいー。


と、そんなことがきっかけで、
今日はちょっとUNIXの基礎の勉強をしてみた。
 #正直技術者として恥ずかしいのだが、
 #自分はアプリ屋専業ということで、UNIX知識は
 #ひじょーに乏しい。

レベルが低いけど、以下のことをしたよってことで、
メモしておく。

 ■ bash のインストール
 
 ■ プロンプトの色を変えた

 ■ bashrc やらなにやらパスとおし

 ■ FTP関連


bash のインストール
まず、シェルをbashに変えるためにbash とたたいてみた。
・・ そんなものはないそうだ。
いろんなところを探したが、どうやらこのマシンには
bashは入っていないらしい。。

うげー。めんどくせー  ・・ でも、つかいたいし。。
インスコ してみましょーか。。
ということで。

・GNUのどっかのサイトにいって、bash3.2なるものをとってきた。
・んで、/usr/local/bin/tar xzvf で解凍して
・./configure, make, make install
・なんかfatal errorとかが出たが、ようわからん・・
・でも /usr/local/bin/bash っての
 が使えるようになったからよしとしよう。  ・・ 

さっそくbash と打ってみる。
う! パス通ってねー。。

/usr/local/bin/bash

お!バッシュうごいた!

プロンプトの色かえ
なんか、プロンプトが気持ち悪い。
もっとかっこよくいきたい。

ということで、プロンプトを変える方法をぐぐってみた。

ふむふむ。

PS1って環境変数設定すればいいのか。

ほー色も変えられるんだねぇ。

よし!そんじゃ、この設定を/etc/profileとかにかいちゃおう。
あと、/usr/local/bin にもパスとおしとこ

そだ、あとあと、/etc/passwdも書き換えて、デフォルトシェルを
バッシュにしよーっと

パスとおし

環境変数PAHT と PS1 をどこで設定しようか迷う。

/etc/profile
/etc/bashrc
.bash_profile
.bashrc

をいろいろいじくり回してみた。

たぶんサーバ管理とかしてる人は、ちゃんとポリシーなんかが
あるんだろうけど、自分はようわからん。

/etc/profileにかけば、何でもかんでも適用されることは
しっていたが、なんだかもうちょっとちゃんとやりたい。

ということで、以下のようにしてみた。
-------------------------------
/etc/profile なにもせず
/etc/bashrc root以外でbashにしたら、これになるようにしよう。
         ここで PS1に緑色でプロンプトを出すように設定
         PATHの設定もここで
.profile    何も考えず source .bashrc と書くようにしよう
.bashrc    ルート以外は. /etc/bashrcと書いておこう。
         ルートは PS1に赤色でプロンプトを出すように設定
         PATHの設定もここで
-------------------------------
素人自己流っぽさが漂う方法なのかもしれないけど、
まあいいや。

俺がしたいのは、以下。 
上記でそれが実現するからそれでいいの!

 ・ルートは赤、その他は緑のプロンプトがいいな
 ・ログインしたらすぐにbashになってる 
 ・/usr/local/binにパスが通っている。

よし、完成か? 

今度はルビーでも動かしてみるか。
ルビーをとってきて、 FTPしてみよっか。。。

ん? あれ? パスワードが違うって?

FTP関係

色々やってみると、以下のことがわかった。
 ・ほかのIDだとFTPログインできる
 ・ログインシェルをcshに戻すとちゃんとFTPログインできる
 ・psでみてみると、FTPDはproftpd じゃなくてin.ftpd ってやつが動いている。
うーむ。

in.ftpdってのはSolarisのデフォルトなのかー。ふむふむ。

でも、なんで、ログインシェルが変わるとパスワードが違いますってなるんだ?
まいったなぁ・・

と、色々PATHに追加してみたり(あてずっぽう対策)、
Google先生で調べたりしてみると・・

/etc/shellsに /usr/local/bin/bashを追加しないと、
不正なshellって扱いになるらしく、FTPログインさしてくれないらしい。

へー。へー。 へー。

で、/etc/shellsなるファイルに
/usr/local/bin/bashって一行追加してみたら、
ちゃんとFTPログインできましたよ。

やったね!


以上、お恥ずかしながら、
今日勉強したことでしたー

« 2007年7月 | トップページ | 2007年9月 »

Haruya's Violin

2017年8月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

最近のトラックバック

無料ブログはココログ