Solaris 10 x86 で PHPを使う
懐かしい人と電話。弟がお世話になっているそうで、よろしくお願いいたします。
さて、今週は久しぶりに Solaris で色々やってる。
Apache を使えるようにしたり、近くのパソコン工房で、グラフィックボードを買ったり。
で、PHP5.2 の導入もやってみた。
Apache HTTPD について。設定方法等。
懐かしい人と電話。弟がお世話になっているそうで、よろしくお願いいたします。
さて、今週は久しぶりに Solaris で色々やってる。
Apache を使えるようにしたり、近くのパソコン工房で、グラフィックボードを買ったり。
で、PHP5.2 の導入もやってみた。
結構便利かもしれないと思ったが、先ほどの実験は全ての httpd を kill したものなので、今度は一つずつプロセスを kill してみた。
先ほどインストールした Apache 2.2.2 だが、こいつを Solaris 10 の新機能である SMF (Service management Facility) で管理させることにした。
SMF というのはサービスを管理する仕組みで、従来のUNIXだと rc とかで設定していたサービスの起動とか停止とかをするためのもの。さらに、サービスが止まったら勝手に再起動してくれたり、設定ファイルを書き換えたら自動的に再起動してくれたりするみたいだが。そういう複雑な事が出来る仕組みは、設定もめんどうくさいだろうと思っていたら、やっぱり面倒だった。
Google で見つけた、Apache Server Configuration (Solaris Zone) を参考にしつつ、何とか起動するようにした手順(というか、内容は先ほどのページそのまま)を以下に残しておく。
その前に、うっかり SUNWaclg SUNWapch2d SUNWapch2r SUNWapch2u (Apache 2 系のパッケージ)とか、SUNWapchd SUNWapchu SUNWapchr(Apache 1 系のパッケージ) を pkgrm してしまった。これを残したまま設定することも可能だったかもしれないが、あまり気にしていない(サーバじゃないし、僕一人しか使っていないし)。
Apache HTTP Server も バージョンが 2.2.2とかになって、数字が3つ揃って嬉しい気分。で、Solaris 10 マシンにもインストールしてみた。
いつも土日は時間が足りない。本当はこの土日にやるべき事が山積みだったのだが。時間の使い方が悪くなって来ているように思う。サスペンスドラマなんか見るんじゃなかった。。。
先日 PHP5 環境を構築した関係で、PHP4 用に書かれたいくつかのプロダクトが試せない状態である。 XOOPS(あえてリンク先は日本版サイト)も PHP5に対応したと聞いているが、ほとんどのモジュールが PHP4 用に書かれているし、 oSCommerce や Zen Cart なんかも PHP 4 用のプロダクトである。PHP 5で本当に動かないのかどうか試した事は無いが、多分動かないだろう。
ということで、PHP4 環境も作る事にした。但し、Apache と PHP は ports で既に別のバージョン(Apache 2.0.54, PHP 5.0.4)をインストールしている為、ports は使えない(はずである)。なので、ports を使わずにインストールした。
また、インストール済みの Apache がポート番号 80 を使用しているので、別のポート番号(11080)を指定する必要がある。
まあ、そんなこんなでこの土日に出来た事は、Apache1.3, PHP4 のインストールと XOOPS日本版のインストールだけであった。
(注意: 以下、普通にインストール手順しか書いていない。面白い話を期待している人は読まないように)
今日は、ab (ApacheBench) を使った。既存のCGIを作り直したのだが、どれぐらい性能が落ちているのか調べたかったからだ。(性能が落ちているのは PEAR::DBライブラリのせいだと思っている。)
自宅では、Zope の性能を調べて(100同時アクセス、合計 1000リクエストを処理させて)みた。 私のサイトでは、Apache2 と Zope を FastCGI でつないでいる(なぜ、リバースプロキシにせず、FastCGIにしたのかというと、なんとなく名前がかっこよかったからなのだが。。)。それが原因なのかどうかわからないが、1000リクエストのうち 830リクエストが失敗している。
直接、Zope にリクエストを送ってみる( http://192.168.1.1:8080/ ) と、1000リクエスト全て正常に処理できている。もしかしたら、FastCGIは不安定なのだろうか?
今のところ、アクセスは集中していないみたいなのだが、大量のアクセスをさばくには FastCGIは向いていないのかもしれない。調べる必要がありそうだ。
以前この Blog で紹介した Apache モジュール mod_blosxom の作者である 小山浩之さんが、またまたおもろい事をやってくれた。
Net-AJP13改めAtami(熱海) Application Server である。これはようするに、PerlでTomcatのフリをしよう。Net::AJP13の巻(最初のリリース時の小山さんの Blog) というタイトルからわかるように、Java で書かれた Webアプリケーションサーバ Tomcat を、Perl で置き換えようというのだ。
mod_blosxom もそうだが、こういうお笑いのようなノリ (ごめんなさい) は大好きだ。彼のサイトである http://module.jp/ の このサイト MODULE.JP について には以下のように書かれている。
このサイトはApache module APIを利用したApacheモジュールの開発や変態的なPerlモジュールの開発といった、誰が嬉しいんだか良くわからない技術的な情報を扱います。
ネタは誰も思いつかないような 変わった ものだが、中身は結構まともである。
ということでインストールしてみた。
Blosxom (ブロッサム) という、Perl で書かれた Blog ツールがある。 Blosxom は、テキストファイルとして作成された Entry をテンプレートファイルに組み込んで出力するという機能しか持たない、非常に小さな CGI プログラムだ。
その Blosxom を、Apache のモジュールとして C言語で書き直した mod_blosxom というプログラムがある。小山浩之さんが作成されたものだ。
以前より Apache のモジュール作成には興味を持っていたので、じっくりソースを読めるようなモジュールを探していた。 早速、インストールに挑戦してみる。といっても、現在 Blosxom2 に対応するバージョンの mod_blosxom は、まだリリースされておらず、公開されているのは V0.05 というもので、少し古いようだ。今回私がインストールしたのも、古い mod_blosxom である。mod_blosxom 2.0 のほうは、もの自体ほぼできあがっているそうなので、公開される日がまちどおしい。