apache2.2 起動と自動起動設定
apacheの初期設定が終了したら、後は起動させるだけです。
デフォルトのままだと、OSを再起動した場合などに、apacheが起動してくれません。 ここでは、chkconfigに登録し、ランレベルに合わせ起動させるように設定します。
Last Update : 2006年08月20日
apache2.2 起動と自動起動設定の手順
- apache2.2 起動
- apache2.2 自動起動設定(chkconfig に登録)
- 2-1. シェル作成
- 2-2. chkconfig に登録
1. apache2.2 の起動
apacheは、
# /usr/local/apache2/bin/apachectl start
で起動できます。
起動したら、ps コマンドなどで、ちゃんと起動しているか確認するか、 実際にブラウザからURLを入力して確認しましょう。
ブラウザから確認した場合、「It works!」と画面に表示されます。
ちなみに、 以下の様に、start の代わりに configtest と引数を変更して実行すると、設定ファイルがまちがっているかどうか確認できます。
# /usr/local/apache2/bin/apachectl configtest
Syntax error ~ と出てきたら、どこか設定ファイルに間違いがあるので、確認しましょう。
error がある場合は、起動できません。errorの状態のまま、restart をかけるとapacheが停止したりします。 Syntax OK とでれば起動できます。
要は、apachectl に引数あたえれば起動や、停止、ステータスの確認などができます。 下にapachectlの引数の表書いておきます。
引数 | 説明 |
---|---|
start | apache 起動 |
stop | apache 停止 |
restart | apache が停止しているなら起動。 apache が起動しているなら再起動。設定ファイルに間違いがあると、apache が停止したりする。 |
fullstatus | mod_status モジュールが有効になっていて、かつhttpd.confに設定がしてあれば、状態を表示。 CUIでログインしてる時に見たいなら別途テキストベースのブラウザが必要。 もしくは、外からGUIのブラウザからでもみれる。 |
status | fullstatusと同じ。上の方がちょっとだけ詳しい。 |
graceful |
apache が停止しているなら起動。 apache が起動しているなら、処理中のリクエストの完結を待って apache 再起動 |
graceful-stop | 処理中のリクエストの完結を待って apache 停止。 |
configtest | 設定ファイル適用のテスト。正しければ「Syntax OK」、間違いがあれば教えてくれる。 |
startssl | apache を SSLを有効にして起動。 |
2. apache2.2 の自動起動設定(service に登録)
OS自体にリブートをかけたりした場合、初期状態のままだと apache が自動的に起動してきません。ランレベルに合わせてwwwサービスの起動設定をします。
chkconfig --lsit とすると、どのランレベルでどのサービスが実行されるのかのリストが表示されます。これに apache を登録していきます。
2-1. シェル作成
こりたい人は、思う存分こってください。
自分は、面倒なのでコレで。シェルの置き場は決まってます(/etc/init.d/の下)ので、ご注意を。
# cd /etc/init.d/ # vi apache
下記内容を入力
#!/bin/sh # # chkconfig: 35 85 15 # description: apache 2.2.3 apachectl="/usr/local/apache2/bin/apachectl" case "$1" in start|stop|restart|fullstatus| \ status|graceful|graceful-stop| \ configtest|startssl) $apachectl $@ ;; *) ;; esac
↑ case "$1" in の下の start|stop ~ configtest|startssl)は、行末の「 \ 」を取れば一行でOK。
また、コメントアウト(先頭が#のところ)されているところの
chkconfig、 description の行は、chkconfig プログラムがこの2行を見ます。
今回はchkconfig に登録する予定なのでchkconfig、 description の行の記述は必須です。
シェルに実行権限を与えます。
# chmod 755 apache
2-2. chkconfig に登録
# chkconfig --add apache
確認
# chkconfig --list apache
apache 0:off 1:off 2:off 3:on 4:off 5:on 6:off ← サービスが登録され表示されます。
memo
chkconfig に登録しておくと、以下の様にしてサービスの起動や停止が行えます。
# service apache start # service apache stop # service apache restart
上の表の引数全部使えます。
前の記事 << apache2.2 初期設定