web-dev-qa-db-ja.com

Apache2が起動しない-使用可能なリッスンソケットがない-ubuntu 14.04

Xubuntu 14.04でApache2に問題があります。これはすべて、マザーボード上でBIOSが完全に故障した後に発生しました(現在は最新バージョンにフラッシュされていますが、これまでのところ良好です)。

システムを再起動すると、Apacheは自動起動しなくなります。手動でサービスを開始すると、次のメッセージが表示されます。

 * Starting web server Apache2                                                                                                                                          [Thu Sep 18 15:17:56.311536 2014]                                                                                        
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:8                                                                                      0
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.                                                                                        0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
 *
 * The Apache2 instance did not start within 20 seconds. Please read the log files to discover problems

いくつかの調査を行った結果、Apache2の起動時に(pidof Apache2を実行した後に)1つのpid番号が実行されていることがわかりました。 killall Apache2を実行すると、ライブpidが消えます。その後、Apacheを起動すると、エラーなしで正常に動作し、実際に停止します。いつまでも停止し、開始することができます。システムがリブートされるたびに、Apacheの半分は1つのpidで起動し、ポート80でリッスンを開始します(ブロックします)が、正しくありません。したがって、リブート後、killall Apache2を実行してから、サービスを手動で開始する必要があります。

再起動後にコマンドSudo service Apache2 restartを実行すると(起動時に既に実行されているはずなので)このメッセージが表示されます-

 * Restarting web server Apache2                                         [fail]
 * There are processes named 'Apache2' running which do not match your pid file which are left untouched in the name of safety, Please review the situation by hand.

誰にもアイデアはありますか?とても嬉しいです。

サーバーで最近SSLを有効にし、問題が発生する前の1週間は正常に機能していたことに注意してください。

ログ-

[Thu Sep 18 14:54:50.454133 2014] [mpm_prefork:notice] [pid 3005] AH00163: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.4 OpenSSL/1.0.1f configured -- resuming normal operations    
[Thu Sep 18 14:54:50.454758 2014] [core:notice] [pid 3005] AH00094: Command line: '/usr/sbin/Apache2'    
[Thu Sep 18 14:55:09.625943 2014] [mpm_prefork:notice] [pid 3005] AH00169: caught SIGTERM, shutting down    
[Thu Sep 18 14:55:16.061357 2014] [mpm_prefork:notice] [pid 3212] AH00163: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.4 OpenSSL/1.0.1f configured -- resuming normal operations    
[Thu Sep 18 14:55:16.061455 2014] [core:notice] [pid 3212] AH00094: Command line: '/usr/sbin/Apache2'    
[Thu Sep 18 14:58:39.984917 2014] [mpm_prefork:notice] [pid 3212] AH00169: caught SIGTERM, shutting down

起動する前にkillall Apache2コマンドを実行すると、これらがログエントリになります。

[Mon Sep 22 09:38:14.689608 2014] [mpm_prefork:notice] [pid 2624] AH00163: Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.4 OpenSSL/1.0.1f configured -- resuming normal operations    
[Mon Sep 22 09:38:14.689695 2014] [core:notice] [pid 2624] AH00094: Command line: '/usr/sbin/Apache2'

どうもありがとう。

追伸-私はLinuxとサーバー全般については比較的新しいですが、Linuxを学び、自分のホームサーバーをセットアップすることはとても楽しんでいます。

5
Gary Iredale

実際に問題を引き起こしていたのは、私の秘密SSLキーのPEMパスフレーズでした。 Apacheは起動時にそれを入力する必要があるため、ハングしていて、半分実行されています。キーの暗号化を解除しましたが、今では正常に起動します。どうもありがとうございました!!!

1
Gary Iredale