これだけは知っておきたい!5つのApacheコマンドラインオプション.
Webサーバではnginxが好きなんですが,仕事では専らApacheを使ってます.
知ってる人多い上に,なんでも揃えられるし外せるしっていう意味で重宝してます.
そんなApacheですが,コマンドラインでの使い方を知っている人が少ない気がします.
いくつかのオプションを知っているだけでグンッとオペレーションが楽になります.
httpd -v
バージョン番号を出力する.
$ httpd -v Server version: Apache/[バージョン] Server built: [時刻]
httpd -V
コンパイル情報を出力する.
$ httpd -V Server version: Apache/[バージョン] Server built: [時刻] Server's Module Magic Number: 20051115:3 Server loaded: APR 1.2.7, APR-Util 1.2.7 Compiled using: APR 1.2.7, APR-Util 1.2.7 Architecture: 32-bit Server MPM: Prefork threaded: no forked: yes (variable process count) Server compiled with.... -D APACHE_MPM_DIR="server/mpm/prefork" -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=128 -D HTTPD_ROOT="/etc/httpd" -D SUEXEC_BIN="/usr/sbin/suexec" -D DEFAULT_PIDLOG="logs/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_LOCKFILE="logs/accept.lock" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf"
httpd -l
httpd -S
設定されているバーチャルホストの一覧を出力する.
下はRHELにyumで入れたApacheにVirtualHostを2つ設定した例.
$ httpd -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: _default_:443 [FQDN] (/etc/httpd/conf.d/ssl.conf:[設定ファイルの該当行数]) *:80 is a NameVirtualHost default server [FQDN] (/etc/httpd/conf/httpd.conf:[設定ファイルの該当行数]) port 80 namevhost [FQDN] (/etc/httpd/conf/httpd.conf:[設定ファイルの該当行数]) port 80 namevhost [FQDN] (/etc/httpd/conf/httpd.conf:[設定ファイルの該当行数]) Syntax OK
httpd -t
設定ファイルの構文チェックをおこなう.
[service httpd configtest]とかと同じ意味です.
余談ですが,[service httpd XXXX]っていうコマンド(実体は/etc/init.d/httpd)を投げると,[apachctl]っていうコマンドを呼び出すようになってます.
で,この[apachectl]から[httpd]コマンドに対してコマンドを発行します.名前が複数箇所で被っていて混乱しそうですけど簡単です.
エラーがない時
$ httpd -t
Syntax OK
まとめ
主要なコマンドラインオプションを5つ紹介してみました.
[httpd -h]でオプション一覧が確認できますので興味がある方は是非.