このチュートリアルでは、開発者やシステム管理者として知っておくべき、最も一般的に使用されるApache(HTTPD)サービス管理コマンドのいくつかについて説明します。これらのコマンドを手元に置いておく必要があります。また、SystemdおよびSysVinitの両方のコマンドも示します。
関連記事: Linuxユーザーが知っておく必要がある10の最も使用されるNginxコマンド
以下のコマンドは、rootまたはsudoユーザーとして実行する必要があり、CentOS、RHEL、Fedora、Debian、Ubuntuなど、あらゆるLinuxディストリビューションで動作するはずです。
Apacheサーバーのインストール
Apacheウェブサーバーをインストールするには、デフォルトのディストリビューションパッケージマネージャーを使用します。
$ sudo apt install apache2 [On Debian/Ubuntu] $ sudo yum install httpd [On RHEL/CentOS] $ sudo dnf install httpd [On Fedora 22+] $ sudo zypper install apache2 [On openSUSE]
Apacheバージョンの確認
Linuxシステム上のApacheウェブサーバーのインストール済みバージョンを確認するには、以下のコマンドを実行します。
$ sudo httpd -v OR $ sudo apache2 -v
サンプル出力
Server version: Apache/2.4.6 (CentOS) Server built: Nov 5 2018 01:47:09
Apacheのバージョン番号とコンパイル設定を表示したい場合は、次のように-V
フラグを使用します。
$ sudo httpd -V OR $ sudo apache2 -V
サンプル出力
Server version: Apache/2.4.6 (CentOS) Server built: Nov 5 2018 01:47:09 Server's Module Magic Number: 20120211:24 Server loaded: APR 1.4.8, APR-UTIL 1.5.2 Compiled using: APR 1.4.8, APR-UTIL 1.5.2 Architecture: 64-bit Server MPM: prefork threaded: no forked: yes (variable process count) Server compiled with.... -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=256 -D HTTPD_ROOT="/etc/httpd" -D SUEXEC_BIN="/usr/sbin/suexec" -D DEFAULT_PIDLOG="/run/httpd/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf"
Apache構成の構文エラーを確認する
構文エラーをチェックするために、以下のコマンドを実行してApache構成ファイルをチェックします。これにより、サービスを再起動する前に構成ファイルの妥当性が確認されます。
$ sudo httpd -t OR $ sudo apache2ctl -t
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using tecmint.com. Set the 'ServerName' directive globally to suppress this message Syntax OK
Apacheサービスを開始する
以下のコマンドを実行することで、Apacheサービスを開始します。
------------ On CentOS/RHEL ------------ $ sudo systemctl start httpd [On Systemd] $ sudo service httpd start [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl start apache2 [On Systemd] $ sudo service apache2 start [On SysVInit]
Apacheサービスを有効化する
前のコマンドは、Apacheサービスを一時的に開始しますが、これをシステムの起動時に自動的に開始させるために、以下のコマンドを実行します。
------------ On CentOS/RHEL ------------ $ sudo systemctl enable httpd [On Systemd] $ sudo chkconfig httpd on [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl enable apache2 [On Systemd] $ sudo chkconfig apache2 on [On SysVInit]
Apacheサービスを再起動する
Apacheサービスを再起動するには(停止した後、開始したサービスを)、以下のコマンドを実行します。
------------ On CentOS/RHEL ------------ $ sudo systemctl restart httpd [On Systemd] $ sudo service httpd restart [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl restart apache2 [On Systemd] $ sudo service apache2 restart [On SysVInit]
Apacheサービスの状態を表示する
Apacheサービスの実行状態を確認するには、以下のコマンドを実行します。
------------ On CentOS/RHEL ------------ $ sudo systemctl status httpd [On Systemd] $ sudo service httpd status [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl status apache2 [On Systemd] $ sudo service apache2 status [On SysVInit]
Apacheサービスを再読み込む
Apacheサーバーの設定を変更した場合、サービスに対して設定を再読み込むために、以下のコマンドを実行することができます。
------------ On CentOS/RHEL ------------ $ sudo systemctl reload httpd [On Systemd] $ sudo service httpd reload [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl reload apache2 [On Systemd] $ sudo service apache2 reload [On SysVInit]
Apacheサービスを停止する
Apacheサービスを停止するには、以下のコマンドを使用します。Apache、
------------ On CentOS/RHEL ------------ $ sudo systemctl stop httpd [On Systemd] $ sudo service httpd stop [On SysVInit] ------------ On Ubunt/Debian ------------ $ sudo systemctl stop apache2 [On Systemd] $ sudo service apache2 stop [On SysVInit]
Apacheコマンドの帮助を表示する
最後に、以下のコマンドを実行することで、Apacheサービスコマンドに関する
$ sudo httpd -h OR $ sudo apache2 -h OR $ systemctl -h apache2
Sample Output
Usage: httpd [-D name] [-d directory] [-f file] [-C "directive"] [-c "directive"] [-k start|restart|graceful|graceful-stop|stop] [-v] [-V] [-h] [-l] [-L] [-t] [-T] [-S] [-X] Options: -D name : define a name for use in directives -d directory : specify an alternate initial ServerRoot -f file : specify an alternate ServerConfigFile -C "directive" : process directive before reading config files -c "directive" : process directive after reading config files -e level : show startup errors of level (see LogLevel) -E file : log startup errors to file -v : show version number -V : show compile settings -h : list available command line options (this page) -l : list compiled in modules -L : list available configuration directives -t -D DUMP_VHOSTS : show parsed vhost settings -t -D DUMP_RUN_CFG : show parsed run settings -S : a synonym for -t -D DUMP_VHOSTS -D DUMP_RUN_CFG -t -D DUMP_MODULES : show all loaded modules -M : a synonym for -t -D DUMP_MODULES -t : run syntax check for config files -T : start without DocumentRoot(s) check -X : debug mode (only one worker, do not detach)
systemctlについてのより詳細な情報を探すために、以下のリンクを参照してください: Linuxで‘Systemd’サービスとユニットを‘Systemctl’を使用して管理する方法。
以下のApache関連記事もおすすめです。
- Apache Webサーバーのパフォーマンスを向上させるための5つのヒント
- Apache Webサーバーの負荷とページ統計を監視する方法
- 「Apache GUI」ツールを使用してApache Webサーバーを管理する方法
- LinuxでApache HTTPポートを変更する方法
- 13のApache Webサーバーセキュリティとハードニングのヒント
- Mod_SecurityとMod_evasiveモジュールを使用してApacheをブルートフォース攻撃やDDoS攻撃から保護する方法
以上です!この記事では、Apache/HTTPDサービスの起動、有効化、再起動、停止など、よく使用される管理コマンドを説明しました。ご質問やコメントがある場合は、下記のフィードバックフォームからいつでもお問い合わせください。
Source:
https://www.tecmint.com/manage-apache-web-server-in-linux/