ウェブ

FastCGIインストール on x86_64

2008/01/30

CentOS 5.1(x86_64)な環境に、Apcache2.2 + FastCGI + mod_fastcgi を設置したのですが、手こずったのでメモ。すべての原因は環境がi386ではなく、x86_64だということに気づかず、ライブラリの指定などを間違えていたことにありました。

※ちなみに、uname -i でアーキテクチャを確認することが出来ます。

実行環境

  • OS: CentOS 5.1
  • Arc: x86_64

準備

下記パッケージをyumでインストールしました。

  • apr
  • apr-util
  • apr-devel
  • apr-util-devel
  • httpd-devel
  • httpd
  • ruby
  • ruby-devel
  • ruby-rdoc

ライブラリ関係は、x86_64なので/usr/lib64におさまるようです。i386のものもyumで入るのですが、これは通常通り/usr/lib/に設置されます。

FastCGIインストール

fastcgi本体はyumになかったので、ソースからインストールしました。

wget http://www.fastcgi.com/dist/fcgi-2.4.0.tar.gz
tar zxvf fcgi-2.4.0.tar.gz
cd fcgi-2.4.0
./configure
make
make install

FastCGIをx86_64用に設置

これで/usr/local/lib配下にlibfcgi関係が配置されますが、使っているのはx86_64なので
/usr/local/lib64/にこれらをすべてをコピー。

cp -r /usr/local/lib/* /usr/local/lib64/

かつ、ldconfig.so.d/hoge.confに/usr/local/lib64を追記してライブラリのパスを通します。

emacs /etc/ldconfig.so.d/hoge.conf
ldconfig

で有効にします。

ruby-fastcgiインストール

次にrubyのfastcgiライブラリをインストールします。

gem install fcgi

※ ここで can’t find header files for ruby. とエラーが出る場合は、ruby-develがインストールされていない場合に起こるようです。

mod_fastcgiインストール

./configureは必要なく、Makefileを直接編集し、top_dirを書き換えます。(top_dirはhttpd-develを展開した場所?)
デフォルトのままmakeすると、「special.mkがない」と出るので、ここでfindしたら

  • /usr/lib64/httpd/build/special.mk
  • /usr/lib/httpd/build/special.mk

という二カ所がヒット。64bitな環境なので、上の/usr/lib64を利用します。

cp Makefile.AP2 Makefile
<makefile のtop_dirを/usr/lib64/~に変更>
make
make install

※巷ではApache2.2でpatchを当てる必要があるという話ですが、2.4.0は、もうすでにあたっている様子。

httpd.confの設定

インストールが完了したら、httpd.confの設定です。

LoadModule fastcgi_module modules/mod_fastcgi.so

を追加して、Apache再起動。

conf.d/fastcgi.conf のようにして、httpd.confの外に出しても問題ありません。ただし、User / Groupの記述の後に読み込む必要があります。

参考URL

http://pools.jp/2007/03/15/ruby-rails-apache-fastcgi-setup/


related posts


tags

, , , ,


have your say

Add your comment below, or trackback from your own site. Subscribe to these comments.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

:

:


« NIKEiD JASARI
» fixture時にint型の値にNULLが入らない