« rewind | トップページ | Apache2.4で.htaccessの記法が変更に »

Cento+Apache2.4+Ruby

1.Apache2.4.2のインストール

Apache2.4が出ていたので、ソースからインストールしてRubyをCGIで動かすまでの手順をメモしておきます。細かいバージョンは以下の通りです。

CentoOS5.7
Apache2.4.2

まず、Apache2.2まではApacheのソースに同梱されていたaprが、2.4では別でダウンロードしないといけなくなっています。いきなりApacheをインストールしようとしても、configureの時点で以下のようなエラーが出てインストールできません。

Configuring Apache Portable Runtime library ...
configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.

そのため最初に以下のサイトからaprとapr-utilの最新版をダウンロードしておきます。

・aprとapr-utilのダウンロードサイト

http://ftp.jaist.ac.jp/pub/apache//apr/

インストールはデフォルト設定で行って構いません。以下手順です。

$ tar xzf apr-1.4.6.tar.gz $ cd apr-1.4.6 $ ./configure $ make $ sudo make install


aprはデフォルトで/usr/local配下にインストールされます。apr-utilのconfigureはaprの場所を紐付けて行います。

$ tar xzf apr-util-1.4.1.tar.gz 
$ cd apr-util-1.4.1
$ ./configure --with-apr=/usr/local/apr
$ sudo make install

次はようやくApache2.4.2をインストールします。まず下記のサイトでApache2.4の最新バージョンをダウンロードします。

・Apache2.4のダウンロードサイト

http://httpd.apache.org/download.cgi#apache24

以下、インストール手順になります。今回DSOモジュールは全て組み込んでいます。

$ tar xzf httpd-2.4.2.tar.gz 
$ cd httpd-2.4.2
$ ./configure --enable-mods-shared=all --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
$ make
$ sudo make install

これでconfigure時にエラーは出ません。apachectl startすれば元気よく「It works!」となります。

2.Rubyを有効に

rubyをcgiとして使えるようにするにはhttpd.confを編集しますが、2.2のときと比べて微妙に内容が変わっています。以下、修正点一覧です。

#LoadModule cgid_module modules/mod_cgid.so
 ↓
LoadModule cgid_module modules/mod_cgid.so

<directory>
    AllowOverride none
    Require all denied
</directory>
 ↓
<directory>
    Options FollowSymLinks
    AllowOverride All
    Require all granted
</directory>

<directory "/usr/local/apache2/cgi-bin" >
    AllowOverride None
    Options None
    Require all granted
</directory>
 ↓
<directory "/usr/local/apache2/cgi-bin" >
    AllowOverride All
    Options +ExecCGI
    Require all granted
    SetHandler cgi-script
%lt;/directory$gt;

AddHandler cgi-script .cgi
 ↓
AddHandler cgi-script .cgi .rb

設定は以上です。これでApacheを再起動すれば.cgiでも.rbでもrubyがCGIとして動くようになっています。

« rewind | トップページ | Apache2.4で.htaccessの記法が変更に »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: Cento+Apache2.4+Ruby:

« rewind | トップページ | Apache2.4で.htaccessの記法が変更に »