エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Apacheの起動しているかの確認方法と起動、再起動、終了のコマンド

      2019/02/24

Apacheが起動しているかを確認する方法

 

Apacheが起動しているかを確認する方法

 
Apacheが起動しているかどうかを確認する方法は、以下のコマンドを root権限で実行します。
確認した環境は、AWSです。
 

[user1@test ~]$ /etc/init.d/httpd status
httpd (pid  2220) を実行中...

 
もしくは、
 

[user1@test ~]$ service httpd status
httpd (pid  2220) を実行中...

 
上記の通り「httpd (pid xxxx) を実行中…」と表示された場合は、実行されている状態です。
 
「httpd is stopped」と表示された場合は、Apacheは止まっています。
 
もしくは、
 
Red Hat Enterprise Linux 7 や CentOS 7 など最近の OSでは下記のコマンドでも確認ができます。
 

# systemctl status httpd

 
正常に動作している場合は、下記の様に「Active: active」と表示されます。
 

# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2018-07-15 00:50:34 JST; 4s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 2618 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
 Main PID: 2622 (httpd)
   Status: "Processing requests..."
   CGroup: /system.slice/httpd.service
           tq2622 /usr/sbin/httpd -DFOREGROUND
           tq2623 /usr/sbin/httpd -DFOREGROUND
           tq2624 /usr/sbin/httpd -DFOREGROUND
           tq2625 /usr/sbin/httpd -DFOREGROUND
           tq2626 /usr/sbin/httpd -DFOREGROUND
           mq2627 /usr/sbin/httpd -DFOREGROUND

 7月 15 00:50:34 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
 7月 15 00:50:34 localhost.localdomain systemd[1]: Started The Apache HTTP Server.

 
起動していない場合は、下記の様に「Active: failed」と表示されます。
また、不具合があって起動ができない場合は、出力されているログを確認して不具合の修正を行うことができます。
 

# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since 日 2018-07-15 01:12:44 JST; 3s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 2678 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)
  Process: 2677 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)
 Main PID: 2677 (code=exited, status=1/FAILURE)

 7月 15 01:12:44 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
 7月 15 01:12:44 localhost.localdomain httpd[2677]: (2)No such file or directory: AH02291: Cannot access directo...nf:6
 7月 15 01:12:44 localhost.localdomain httpd[2677]: AH00014: Configuration check failed
 7月 15 01:12:44 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
 7月 15 01:12:44 localhost.localdomain kill[2678]: kill: cannot find process ""
 7月 15 01:12:44 localhost.localdomain systemd[1]: httpd.service: control process exited, code=exited status=1
 7月 15 01:12:44 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
 7月 15 01:12:44 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
 7月 15 01:12:44 localhost.localdomain systemd[1]: httpd.service failed.
Hint: Some lines were ellipsized, use -l to show in full.

 
 
ちなみに、Apacheがインストールされているか、また、Apacheのバージョンを調べる場合は、下記のコマンドを実行します。
 

# httpd -v

 
 
Apacheのインストールの他、VirtualBoxに LAMP環境を構築する方法は、下記を参考にしてください。
VirtualBoxにCakePHP3を設置。必要なCentOS、Apache、PHP、MySQL、Composerをインストールし設定する
 
 

Apacheの起動確認は root権限で実行する

 
root権限がない場合は、「httpd status unknown due to insufficient privileges.」や「httpd.worker status unknown due to insufficient privileges.」といったエラーメッセージが表示されます。どちらも、「十分な権限がないため、httpdのステータスが不明です。」というメッセージです。
 
そのため、確認コマンドを実行する際には「sudo」コマンドを利用するか、rootユーザに変更してから実行します。
 

[user1@test ~]$ sudo /etc/init.d/httpd status
[user1@test ~]$ sudo service httpd status

 

 

Apacheを起動するコマンド

 
Apacheが起動しているかを確認したのち、Apacheを起動させる場合は下記のコマンドで起動させます。
この Apache起動コマンドも root権限が必要になります。
 

[user1@test ~]$ /etc/init.d/httpd start
Starting httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ service httpd start
Starting httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ apachectl start

 
「apachectl start」で起動した場合は、起動したかどうかのメッセージは表示されません。
 
もしくは、
 

[user1@test ~]$ systemctl start httpd

 
「systemctl start httpd」で起動した場合は、起動したかどうかのメッセージは表示されません。
 
 

Apacheを停止するコマンド

 
Apacheを停止させる場合は、下記のコマンドで停止させます。
この Apache停止コマンドも root権限が必要になります。
 

[user1@test ~]$ /etc/init.d/httpd stop
Stopping httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ service httpd stop
Stopping httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ apachectl stop

 
「apachectl stop」で停止した場合は、停止したかどうかのメッセージは表示されません。
 
もしくは、
 

[user1@test ~]$ systemctl stop httpd

 
「systemctl stop httpd」で起動した場合は、停止したかどうかのメッセージは表示されません。
 
 

Apacheを再起動するコマンド

 
Apacheを再起動する場合は、一度停止コマンドを実行し、改めて起動コマンドを実行する、という方法もありますが、それをまとめて行う再起動のコマンドもあります。
 

[user1@test ~]$ /etc/init.d/httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ /etc/init.d/httpd condrestart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

 
もしくは、
 

[user1@test ~]$ /etc/init.d/httpd reload
Reloading httpd:                                           [  OK  ]

 
もしくは、
 

[user1@test ~]$ /etc/init.d/httpd graceful
Gracefully restarting httpd:

 
もしくは、
 

[user1@test ~]$ systemctl restart httpd

 
もしくは、
 

[user1@test ~]$ systemctl reload httpd

 
 
Apacheを再起動するコマンドは複数ありますが、多くの場合は「graceful」を使用します。
詳細は、下記を確認していただきたいのですが、「graceful」は稼働中の Webサーバのサービスを止めずに再起動することができるためです。
 
ただし、「graceful」だと、設定変更の内容が反映されない場合もありますので、開発環境での再起動や、httpd.confの設定を変更したときなどは、「restart」を使用する方が確実です。
 
また、「systemctl」コマンドで「graceful」と同様の再起動をする場合は「reload」を使います。
 
 

/etc/init.d/httpd restart  service httpd restart

 
コマンドが入力されると、Webサービスをすぐに停止し、再起動を実行します。
実行中のリクエストの処理は中止されます。
 
子プロセスがすべて停止したのち、親プロセスも停止します。再起動の際に親プロセスの IDは変更されます。
 
 

/etc/init.d/httpd condrestart

 
「restart」と同じく、コマンドが入力されると、Webサービスをすぐに停止し、再起動を実行します。
実行中のリクエストの処理は中止されます。
 
ただし、Apacheが起動しているときのみ再起動を実行します。
 
 

/etc/init.d/httpd reload

 
Webサービスを終了せず、変更した設定の反映を行います。
実行中のリクエスト処理は中止されます。
 
子プロセスをすべて停止しますが、親プロセスは停止しません。その後、設定ファイルを再読み込みし、新しい子プロセスを起動します。
設定ファイルに誤りがある場合は、親プロセスはエラーとともに終了します。
 
 

/etc/init.d/httpd graceful  systemctl reload httpd

 
Webサービスを終了せず、変更した設定の反映を行います。
実行中のリクエスト処理は中止されません。
 
子プロセスに現在のリクエストの処理が終了後に停止するよう処理します。親プロセスは設定ファイルを再読み込みし、新しいリクエストに対しては、新しい設定で応答を行います。

 - プログラミング・Web関連技術

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順
Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順

Gitはフォルダだけを管理対象にすることはできない。そのため空の.gitkeepファイルを作成し管理対象にすることで、それが入っているフォルダも管理対象にする、と言う手順で管理を行う。

PythonでURLの有無、存在をチェックするスクリプト

PythonでURLが存在するか否かのチェックスクリプト。ライブラリ「urllib2」を使い、指定のURLにアクセスしそのレスポンスコードを判別するという仕組み。

Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説

開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。

.htaccessのmod_expiresでブラウザキャッシュで高速化でSEO対策!

Page Speed Insightsの指摘事項のファイルのブラウザキャッシュの設定方法。解説もしてるけど、.htaccessにコピペするだけの簡単設置で効果抜群!SEOにも威力を発揮!

コピーコンテンツ対策.htaccessで直リンク禁止しリダイレクトで対応

不正なコピーコンテンツからの直リンクを拒否する.htaccessの設定方法。拒否するサイトを指定、許可するサイトを指定する方法、単純な拒否と画像の差し替えを解説。

.gitignoreで無視フォルダの中の特定のファイルを除外「!(否定文)」を使う場合の注意点
.gitignoreで無視フォルダの中の特定のファイルを除外「!(否定文)」を使う場合の注意点

Gitで管理する対象、対象外のファイル、フォルダの指定は .gitignoreに記述する。その基本的な記述の方法に加え、無視対象にしたフォルダの中の特定のファイルを管理対象にする記述方法を解説。

直リンク禁止の.htaccessを超分かりやすく解説。日本語じゃなくてPHPで説明

直リンクを禁止する.htaccessの記述内容を日本語ではなくPHPで解説!私自身もこの方法ですっかり理解できました。.htaccessって簡単!って思えますよ。

エックスサーバーで独自SSLは永久無料で取り放題。利用方法と理由を解説!

エックスサーバーでは独自SSLが無料でいくつでも設置できるように!しかも、国、都道府県などの数項目の入力と数クリックだけという超簡単!SSL化しない理由がない!

直リンクとは何か?直リンクとディープリンクの違いと著作権問題

直リンクは著作権違反なのか?議論の前にまず「直リンク」の意味を正しく理解しよう。直リンクは他のサイトの画像を読み込む、ディープリンクなど多様な意味がある。

chromedriver.exe - ディスクがありませんと出てSeleniumの設定が上手くいかない
chromedriver.exe – ディスクがありませんと出てSeleniumの設定が上手くいかない

Selenium WebDriverを使ってChromeを自動操作する仕組みを作る際、chromedriver.exeを利用しますが、ディスクがありません、というエラーが発生する場合があります。その対処方法を解説します。