CentOS に Apache をソースコードからインストール
CentOS 5.7 に Apache2.2.21 をソースコードからインストールしました。
インストール手順をざっとご紹介します。(随時、修正予定)
RPM版のapacheを削除する
CentOSにデフォルトでインストールされているRPM版のapacheを削除します。
# httpd -v Server version: Apache/2.2.3 # rpm -e --allmatches --nodeps httpd # httpd -v -bash: /usr/sbin/httpd: そのようなファイルやディレクトリはありません |
Apacheのソースコードをダウンロード・展開
Apacheのソースコードをダウンロードして、展開します。
ソースコードは下記のサイトから Stable 版の Unix Source を wget で取得します。
・DL:Download – The Apache HTTP Server Project
$ su - # cd /usr/local/src/ # wget http://www.meisei-u.ac.jp/mirror/apache/dist//httpd/httpd-2.2.21.tar.gz # tar zxvf httpd-2.2.21.tar.gz # cd httpd-2.2.21 |
Apache をソースコードからインストール
オプションをいくつか付けてconfigureします。
# cd httpd-2.2.21 # ./configure --prefix=/usr/local/apache2/ \ --enable-so \ --enable-rewrite \ --enable-ssl=/usr/local/openssl |
→ opensslが入らないとエラーが出るので、とりあえず、
# ./configure --prefix=/usr/local/apache2/ \ --enable-so \ --enable-rewrite |
そして、makeしてインストール
# make # make install |
Apacheがちゃんとインストールされたか確認します。
# /usr/local/apache2/bin/httpd -v Server version: Apache/2.2.21 (Unix) Server built: Nov 2 2011 19:14:14 |
apacheユーザー作成
# groupadd apache # useradd -g apache -d /var/empty/ -s /sbin/nologin apache |
# vi /usr/local/apache2/conf/httpd.conf |
User apache Group apache |
apacheの起動スクリプトの設定
# cp /usr/local/src/httpd-2.2.21/build/rpm/httpd.init /etc/rc.d/init.d/httpd # chmod 755 /etc/rc.d/init.d/httpd |
apache の設定ファイルの該当部分を編集します。
# vi /etc/rc.d/init.d/httpd httpd=${HTTPD-/usr/local/apache2/bin/httpd} pidfile=${PIDFILE-/usr/local/apache2/logs/httpd.pid} |
# check for 1.3 configuration check13 () { CONFFILE=/usr/local/apache2/conf/httpd.conf |
Apacheの起動を確認します。
# service httpd start Starting httpd : [OK] |
正常起動を確認しました。
ifconfigコマンドでIPアドレスを確認する。(IPアドレスは環境によって異なります)
# ifconfig inet addr:192.168.16.130 |
ローカルPCのブラウザから、http://192.168.16.130/ にアクセスしてApacheが正常に動いているか確認します。
無事にブラウザが表示されたら完了です。
Apacheの自動起動設定
Apacheの自動起動を有効にします。
自動起動を有効にすると、CentOSの起動時にApacheも自動で起動します。
# chkconfig --add httpd # chkconfig httpd on # chkconfig --list httpd httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off |
ファイアーウォールの設定確認
httpd が listen する 80 番ポート(デフォルトの場合)を開放する。
# vi /etc/sysconfig/iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT |
ファイアーウォールを再起動させます。
# service iptables restart ファイアウォールルールを適用中: [ OK ] チェインポリシーを ACCEPT に設定中filter [ OK ] iptables モジュールを取り外し中 [ OK ] iptables ファイアウォールルールを適用中: [ OK ] |
# service iptables start |
OpenSSLをソースコードからインストール
# cd /usr/local/src # wget -c http://www.openssl.org/source/openssl-1.0.0d.tar.gz # tar zxvf openssl-1.0.0d.tar.gz # cd openssl-1.0.0d.tar.gz # ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl -fPIC |
# make # make install |
【参考】
・VMware PlayerにCentOS導入。練習用Webサーバーを構築4
・apache2.2.15をCentOSにソースからインストール[Linux] | QUALL – blog
・Apacheサーバー構築(ソースコンパイル) | 自宅サーバー構築