【Perl】Apache mod_perl static インストール Linux

Apache mod_perl static インストール Linux

概要

  • Apache の ダウンロード
  • mod_perl の ダウンロード
  • configure
  • make と make install
  • http.conf の設定
  • 起動

Apache の 最新版をダウンロード

http://httpd.apache.org/ にて最新版の Apache をダウンロードします。
(2010/05/04 現在 2.2.15)
今回の最新版は、
http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.15.tar.gz
になります。

http://perl.apache.org/ にて最新版の mod_perl をダウンロードします。
(2010/05/04 現在 2.2.15)
今回の最新版は、
http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz
になります。

ダウンロード先 は /usr/local/src とします。多くの方はこのディレクトリをソース置き場としていることが多いでしょう。
また、インストールには root 権限が必要になります。
今回は、インストールからとりあえず起動するまでを記述します。他の設定に関しては別途説明したいと思います。

ダウンロードと解凍

# su
# cd /usr/local/src
# wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.15.tar.gz
# tar zxvf httpd-2.2.15.tar.gz

# wget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz
# cd mod_perl-2.0.4

configure (コンパイル前のチェック)

configureのオプションについては、必要なもののみ設定します。
MP_USE_STATIC
static でインストールします

MP_AP_PREFIX
Apache のソースを指定します。 今回は /usr/local/httpd-2.2.15 にしました。

Apache のオプションを MP_AP_CONFIGURE で指定します。
prefix
インストール先のディレクトリ 今回は /usr/local/httpd-2.2.15 にしました。

enable-so
このオプションを指定しておくと後からモジュールをコンパイルなしで組み込むことができます。
(必要のない方はしてしなくても問題ありません)

enable-rewrite
rewriteを有効にします。
(必要のない方はしてしなくても問題ありません。wordpress 等をインストールする方は有効にすることをお勧めします)

# perl Makefile.PL MP_USE_STATIC=1 MP_AP_PREFIX=/usr/local/src/httpd-2.2.15 MP_AP_CONFIGURE=”–prefix=/usr/local/httpd-2.2.15 –enable-so –enable-rewrite”

make と make install (コンパイルとインストール)

# make
# make install

http.conf の設定

初期動作を確認するだけ、イントラネット内のみ動作でしたら特に設定はそのままで起動します。別途詳しく説明します。

# cd /usr/local/httpd-2.2.15/conf
# vi httpd.conf

起動

# /usr/local/httpd-2.2.15/bin/apachectl start

起動の確認 プロセスが立ち上がっているか?

# ps aux | grep httpd

起動の確認 2 ローカルからアクセスは可能?

# wget http://localhost/
# less index.html

起動の確認3 mod_perl が起動しているか?

# tail -f /usr/local/httpd-2.2.15/logs/error_log
Apache/2.2.15 (Unix) mod_perl/2.0.4 Perl/v5.8.9 configured — resuming normal operations

ブラウザでアクセスをしましょう。
http://localhost(または IP アドレス)/

ブラウザで接続できない場合

IPテーブルの設定を確認しましょう。

# /etc/init.d/iptables stop

を行った後に接続できた場合はIPテーブルでアクセスが拒否されています。

下記の1行を追加すればアクセスできます。ただしセキュリティに関しては、全てのアドレスから80 port に

アクセス できるようになってしまいます。状況に応じてIP等を指定すると良いでしょう。

# vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -p 80 -j ACCEPT

以上になります。

スポンサーリンク

フォローする