今日php.iniのmax_execution_timeを変更しました。サーバーを再起動すると、次のエラーが発生します。
Stopping httpd: [FAILED]
Starting httpd: (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 proc:killall httpdを強制終了し、正常に起動しましたが、サーバー上のWebサイトを開くことができません。
サービスhttpdステータスOUTPUT:
httpd dead but subsys locked
/ var/lock/subsys /からhttpdファイルを削除しました
:S同じ問題。
助けてください!
http -S出力:
VirtualHost configuration:
188.165.241.194:80 is a NameVirtualHost
default server default (/etc/httpd/conf.d/zz010_psa_httpd.conf:47)
port 80 namevhost default (/etc/httpd/conf.d/zz010_psa_httpd.conf:47)
port 80 namevhost lists (/etc/httpd/conf.d/zz010_psa_httpd.conf:101)
port 80 namevhost apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:10)
port 80 namevhost billiard.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:78)
port 80 namevhost curve.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:115)
port 80 namevhost games-world.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:152)
port 80 namevhost gifts.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:189)
port 80 namevhost horoscopes.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:226)
port 80 namevhost questions.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:263)
port 80 namevhost raja.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:300)
port 80 namevhost roses.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:337)
port 80 namevhost search.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:374)
port 80 namevhost social.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:411)
port 80 namevhost wikileaks.apps-srv.com (/var/www/vhosts/apps-srv.com/conf/httpd.include:448)
port 80 namevhost amine.apps-srv.com (/var/www/vhosts/amine.apps-srv.com/conf/httpd.include:68)
port 80 namevhost streamlikehell.co.cc (/var/www/vhosts/streamlikehell.co.cc/conf/httpd.include:10)
port 80 namevhost pageweb.uni.cc (/var/www/vhosts/pageweb.uni.cc/conf/httpd.include:68)
port 80 namevhost findati.com (/var/www/vhosts/findati.com/conf/httpd.include:10)
port 80 namevhost floupie.com (/var/www/vhosts/floupie.com/conf/httpd.include:10)
port 80 namevhost rl.floupie.com (/var/www/vhosts/floupie.com/conf/httpd.include:64)
port 80 namevhost srv1.floupie.com (/var/www/vhosts/floupie.com/conf/httpd.include:88)
port 80 namevhost test.floupie.com (/var/www/vhosts/floupie.com/conf/httpd.include:119)
port 80 namevhost torrent.floupie.com (/var/www/vhosts/floupie.com/conf/httpd.include:143)
port 80 namevhost zoudani.apps-srv.com (/var/www/vhosts/zoudani.apps-srv.com/conf/httpd.include:10)
port 80 namevhost horde.webmail (/etc/httpd/conf.d/zzz_horde_vhost.conf:1)
188.165.241.194:443 is a NameVirtualHost
default server default-188-165-241-194 (/etc/httpd/conf.d/zz010_psa_httpd.conf:78)
port 443 namevhost default-188-165-241-194 (/etc/httpd/conf.d/zz010_psa_httpd.conf:78)
port 443 namevhost lists (/etc/httpd/conf.d/zz010_psa_httpd.conf:121)
port 443 namevhost amine.apps-srv.com (/var/www/vhosts/amine.apps-srv.com/conf/httpd.include:13)
port 443 namevhost pageweb.uni.cc (/var/www/vhosts/pageweb.uni.cc/conf/httpd.include:13)
port 443 namevhost horde.webmail (/etc/httpd/conf.d/zzz_horde_vhost.conf:41)
wildcard NameVirtualHosts and _default_ servers:
_default_:443 ks380062.kimsufi.com (/etc/httpd/conf.d/ssl.conf:81)
Syntax OK
/ var/subsysまたは/ var/run、あるいはその両方に誤ったロックファイルがあります。この質問の一般的な形式は、serverfaultでは 以前に回答 でした。
Httpd -Sを実行し、出力をポストします。
[2011年3月15日19:21:34] [警告] Init:名前ベースの仮想ホストをSSLと組み合わせて使用しないでください。
このエラーも問題の原因となっている可能性があります。すべてのhttps(ポート443)構成を無効にしてみてください。 /etc/httpd/conf.d/でchmod 000を使用して構成を更新し、httpdを再起動します(/etc/init.d/httpd restart)
ログをチェックして、何が起こっているかを確認しましたか?私はsyslogとhttpdに何かを見ることを期待します。
ログは、ほとんどのシステムの/ var/logにあります。
また、ハングしたプロセスの結果として既存のファイルロックがあるかどうかを確認しましたか?
psgrep httpd
は、ゾンビプロセスがあるかどうかを示します。
これは実際には悪い兆候である可能性があります。これは、ポート80へのバインディングを継承したサーバーで以前に実行された不正なプロセスがあることを示している可能性があります。
次のコマンドを実行して、それがどのpidかを調べます。
fuser 80/tcp
そこから、少なくともプロセスを強制終了する前に、プロセスの開始時間を取得する必要があります。
ps -o lstart $pid
開始時刻を使用して、ログ内のほぼ同じ時刻を相互参照し、そのプロセスが最初にどのように存在するかを判断することができます。
これを行った後に問題のプロセスを強制終了してApacheを再起動できますが、その場合は、システムが危険にさらされており、さらに調査が必要であると考える必要があります。
ファイル/etc/init.d/httpd
を編集します
ラインを検索
pidfile=${PIDFILE-/var/run/httpd/httpd.pid}
そしてそれを
pidfile=${PIDFILE-/var/run/Apache2/httpd.pid}
そして、あなたは行ってもいいはずです!
私にとって、この問題の解決策はphp apc configを更新することでした。
Apc 3.1.4以降では、サフィックスを使用して値を指定する必要があります。
apc.shm_size=512M
3.1.4以前では、このフォーマットはApacheをクラッシュさせるようです。 apcバージョンはphpinfo();で確認できます。解決策:apc.shm_size
およびapc.max_file_size
の「M」サフィックスを削除します。次に、ロックファイルを削除し、httpdを再起動します。
他の回答で言及されている他の犯人に加えて、このエラーはレッドニシンの可能性もあります。
サーバーのディスクがいっぱいでないことを確認してください!
$ df -h
Filesystem Size Used Avail Use% Mounted on
...
/dev/sda3 30G 30G 0G 100% /
...
エラーはphp.iniファイルからのもので、memory_limitの前に4000MBに設定しました。サーバーに12GBのram DDR3を設定し、-1に無制限に変更した後、Apacheが起動しました:)