LinuxへのApacheインストール(さくらVPS)
現時点では特にサービス運営とか何も考えていないけど
いずれは利用しそうだし勉強用にって事で
・環境
さくらVPS Linux CentOS release 6.4 (Final) Apache2.2.25
ちなみにディストリビューションの確認コマンド
cat /etc/redhat-release
手順
さくらは最初からyum入ってますが
せっかくなのでソースからインストール
依存ライブラリインストール
yum -y install gcc yum -u install zlib-devel
1.Apacheダウンロード、解凍
cd /usr/local/src wget http://ftp.kddilabs.jp/infosystems/apache//httpd/httpd-2.2.25.tar.gz tar xzf httpd-2.2.25.tar.gz
Apacheのダウンロードは
Download - The Apache HTTP Server Project
より
今回は2.2系の最新版2.2.25をダウンロード
※2013/9/5時点
ちなみに過去バージョンをダウンロードする場合には
http://httpd.apache.org/download.cgi での「archive download site.」のリンクにあります
これいつも忘れる…
2.インストール
・コンパイル
cd httpd-2.2.25 ./configure --prefix=/usr/local/apache \ --enable-so \ --enable-mods-shared=all \ --enable-ssl \ --enable-rewrite \ --enable-proxy \ --enable-proxy-balancer \ > configure.log
コンパイル時のオプションは基本的なものを指定
-
- prefix=/usr/local/apache
-
- enable-so
→Apache を自前でビルドする時に指定するもの
後々モジュールインストールする為には指定しておく必要あるみたい
mod_so というモジュールが、DSO(Dynamic Shared Object - 実行時に、モジュールをロード、アンロードする形式)をサポートしている。
-
- enable-mods-shared=all
→基本的な共有モジュールがインストールされるみたい
APACHE_HOME/moduule/にモジュールが生成される。
その他モジュール指定時、
-
- enable-モジュール名=shared
と記述すると、httpd.confで当該モジュールのコメントアウトが外れてロードされた状態でApacheがインストールされる。
※インストールされるモジュール参考
http://www.ahref.org/tech/server/apacche/276.html
Apache 2.4からはソースにAPRとAPR-utilが同梱されなくなったので、自分でインストールしなくてはいけないらしい。
コンパイル時エラー
早速つまづきました…
checking for zlib location... not found
zlibがありませんよって事らしい
ちなみにzlibはデータの圧縮解凍関連のフリーのライブラリ
って事で
zlibのインストール、yumにて
yum install zlib-devel
…エラーメッセージぽいのは出なかったので恐らくOK?
・ビルド
make
だーっとログが流れます、、結構長い
こちらもエラーっぽいのは出なかったのでOK
・インストール
make install
エラーメッセージは無さそう
って事でインストールは完了(だよね?)
2.設定
とりあえず基本的な設定を
vi /usr/local/apache/conf/httpd.conf Listen 80 ↑ポート変更なら任意の番号に ServerName localhost:80 ↑任意のサーバー名
あれ、そんなにないや
ま、後々気づいた時に修正って事で
3.起動・停止チェック
起動
/usr/local/apache/bin/apachectl start
プロセス確認
ps ax|grep httpd 7624 ? Ss 0:00 /usr/local/apache/bin/httpd -k start 7625 ? S 0:00 /usr/local/apache/bin/httpd -k start 7626 ? S 0:00 /usr/local/apache/bin/httpd -k start 7627 ? S 0:00 /usr/local/apache/bin/httpd -k start 7628 ? S 0:00 /usr/local/apache/bin/httpd -k start 7629 ? S 0:00 /usr/local/apache/bin/httpd -k start
apacheのプロセス確認できればOK
停止
/usr/local/apache/bin/apachectl stop
4.Apache起動スクリプト作成
一応上記のコマンドでも起動・停止行えるがchkconfigコマンドでの自動起動設定できるように
起動スクリプト作成
※CentOS7の場合は起動スクリプトと自動起動設定の方法が異なります、下記記事参考。
toriaezu-engineer.hatenablog.com
cp build/rpm/httpd.init /etc/rc.d/init.d/httpd vi /etc/rc.d/init.d/httpd httpd=/usr/local/apache/bin/httpd pidfile=/usr/local/apache/logs/httpd.pid CONFFILE=/usr/local/apache/conf/httpd.conf
httpd=、pidfile=、CONFILE=
を環境に合わせて設定する
作成後は起動確認
/etc/init.d/httpd start Starting httpd: [ OK ]
大丈夫みたい
5.Apache自動起動設定
chkconfigコマンドでの自動起動設定を行う
chkconfig --add httpd chkconfig httpd on
実行しても何もメッセージ出ないので心配になりますが
これでサーバー起動時にも自動的にApacheが起動します
ちなみにchkconfigの確認
chkconfig --list | grep httpd httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ランレベル2~5で設定、基本的な設定らしいが…
6.ブラウザからの表示確認
「It works!」が表示されればOK
この状態が公開されているってなんか恥ずかしいですね・・
とりあえずこれでApacheインストールが完了し
webサーバー公開まで出来ました。