のインストールと起動、2回目

いよいよインストールしてみる。インストールの方法はさまざま。私はFreeBSD好きだけど、一般的にはLinuxなのかな。

  • バイナリパッケージを使ってインストール
  • ソースを入手してインストール

バイナリパッケージを使ってインストール

Fedra Core
(確認)
# rpm -q httpd
(インストール)
# yum install httpd
# yum update
SUSE
(確認)
# rpm -q httpd
(インストール)
# yast
YaSTが起動したら[Software]-[Software Management]を選択→
利用可能なパッケージ一覧が表示→
表示されるパッケージを絞りこむために[Filter]-[RPM Group]→
[Productivity]-[Networking]-[Web]-[Servers]→
一覧の中から apache2, apache2-worker でスペースキー→
[Accept]→
後はメッセージに従って進む
Debian
(確認)
# dpkg -l apache2
(インストール)
# apt-get update
# apt-get install apache2
# apt-get upgrade

ソースを入手してインストール

(今動いているものを削除)
Fedra Core # yum remove http
Debian     # apt-get remove apache2
SUSE       # rpm -e apache2 apache2-worker

この後の工程は Unix ならほぼ同じ。
まずはソースを入手して、インストール。とりあえずオプションははずした。

$ wget ftp://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.0.tar.gz
$ tar zxvf httpd-2.2.0.tar.gz
$ cd httpd-2.2.0.tar.gz
$ ./configure
$ make 
$ sudo
# make install

./configure でいろんなオプションを指定できるが、とりあえず何もしない。

設定ファイルに記述

ディストリビューション 設定ファイルのパス 起動スクリプト 初期ユーザ名 初期グループ
Fedra Core /etc/httpd/conf/httpd.conf /etc/init.d/httpd apache apache
SUSE /etc/apache2/listen.conf /etc/init.d/apache2 wwwrun www
Debian /etc/apache2/apache2.conf /etc/init.d/apache2 www-data www-data
ソース /usr/local/apache2/conf/httpd.conf /usr/local/bin/apachectl daemon daemon

Apacheは親プロセスを管理者権限で実行し、子プロセスを指定したユーザの権限で実行できる。Apache はそれ専用のユーザで実行した方がよいので、ソースからインストールした場合は変更した方がよい。そのために専用のユーザを登録する。

# useradd -u 200 -d /usr/local/apache2/htdocs -s /sbin/nologin apache

-u ユーザID(499以下のもの)
-d ホームディレクトリ
-s ログインシェル (今回はログインする必要がないので /sbin/nologin)
最後の apache がアカウント

設定ファイルにホスト名を記述する。

ServerName <ホスト名>:80
User  apache
Group apache

Apacheの起動、停止、再起動

ディストリビューション 起動 停止 再起動 設定のテスト
Fedra Core start stop restart configtest
SUSE start stop restart configtest
Debian start stop restart ×
ソース start stop restart -t
(Fedra Coreで起動) # /etc/init.d/httpd start
(Debian で停止)    # /etc/init.d/apache2 stop