2016-08-30 7 views
0

udeployを使用して頻繁に展開します。最後に、sudo ./apachectl -k restartを使用してapace httpサーバーを自動的に再起動するステップがあります。 しかし、時には、サーバーは以下のエラーで再起動に失敗します -Apache HTTPサーバーの再起動に失敗する

(98)Address already in use: make_sock: could not bind to address [::]:80 
(98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 
no listening sockets available, shutting down 
Unable to open logs 

は時々、すべての回ではないのでご注意ください。重複していないものをすべて確認しました。httpd confファイルのポート80のリスンディレクティブ、sslキーファイルのパスワードプロンプトの問題はありません。私はサーバーへのルートアクセスを持っていないので、メインのApacheサーバーが起動する前にポート80をバインドする他のプロセスがあるかどうかを実際に確認することはできません。しかし、問題を引き起こしている可能性のあることは他にもあります。 ここにご協力いただければ幸いです。おそらく

乾杯、

アシュリー

+0

あなたのスクリプトは何をしていますか? – covener

+0

このスクリプトは単なる単純なものです: - sudo ./apachectl -k restart。しかし、時々、この再開は質問に記載されているように失敗します。だから私は通常の再起動が速すぎるかもしれないし、停止後に起動しようとすると、サーバーが実際に停止していない可能性があり、まだバインドされているポートを使用している可能性があるため、私は、一度apacheサーバーを再起動すると、ポートにバインドする他のプロセスがあるとは思わない。何かご意見は? – Ashley

答えて

0

ないタイミングの確認、しかしそこに障害があると、それが使用中である可能性があるすべてのリソースを解放するのに十分な時間を可能とするかもしれないときに起動する第二の試みを追加。

+0

これは問題を解決するための貴重なヒントになるかもしれませんが、答えは本当に解決策を示す必要があります。あなたが意味することを示すサンプルコードを提供するために[編集]してください。代わりに、これをコメントとして書くために十分な評判が得られるまで待つことを検討してください。 –

+0

私は自動化されたデプロイメントを意味するので、実際にサーバーに入り手動で再起動する必要はありません。私はちょうど私が私のスクリプトに含めることができる何かを探しています最大の状況下でサーバーを再起動することができます – Ashley

+0

まあ私は上記のように自動的にサーバーを再起動しようとするスクリプトを書くことができますし、 (つまり、再起動しないと終了コードを1に再起動することを意味します)、ポート80を保持しているプロセスがあるかどうかを調べ、そのプロセスを強制終了してサーバーを再起動しようとします。 – Ashley

関連する問題