web-dev-qa-db-ja.com

Apacheとphpが子pid xxx終了信号のセグメンテーション違反(11)を機能しない

Php.iniファイルを変更した後、次のようなエラーメッセージが表示されました。

vim /etc/php.ini

;スクリプトが消費するメモリの最大量(128MB)
; http://www.php.net/manual/en/ini.core.php#ini.memory-limit
memory_limit = 1536

Apacheは起動しますが、以前実行していた仮想ホストのサーバーにはなりません。 phpエラーがどこにも表示されていません。これを修正するために何をする必要があるのか​​わかりません。

 2015年4月30日08:29:06] [通知] SIGTERMをキャッチしてシャットダウンしました
 [2015年4月30日08:29:07] [警告] Init:名前ベースのSSL仮想ホストTLSサーバー名表示がサポートされているクライアントでのみ機能します(RFC 4366)
 [Thu Apr 30 08:29:07 2015] [通知]ダイジェスト:ダイジェスト認証のシークレットを生成しています... 
 [Thu Apr 30 08:29:07 2015] [通知]ダイジェスト:完了
 [Thu Apr 30 08:29:07 2015] [警告] Init:名前ベースのSSL仮想ホストは、TLSサーバー名を持つクライアントでのみ機能します表示サポート(RFC 4366)
 [Thu Apr 30 08:29:07 2015] [通知] Apache/2.2.15(Unix)PHP/5.3.3 mod_ssl/2.2.15 OpenSSL/1.0.0-fips構成済み-通常の操作を再開します
 [Thu Apr 30 08:29:12 2015] [notice] child pid 35160 exit signal Segmentation fault(11)
 [Thu Apr 30 08:29:12 2015 ] [通知]子pid 35161終了信号セグメンテーション違反(11)
 [Thu Apr 30 08:29:12 2015] [通知]子pid 35163終了信号セグメンテーション違反(11)
 [木2015年4月30日08:29:13] [通知e]子pid 35164終了信号セグメンテーション違反(11)
 [2015年4月30日08:29:14] [通知]子pid 35162終了信号セグメンテーション違反(11)
 [4月30日08:29:17 2015] [通知]子pid 35167終了信号セグメンテーションフォールト(11)
 [Thu Apr 30 08:29:20 2015] [通知]子pid 35166終了シグナルセグメンテーションフォールト(11)
 [2015年4月30日08:29:20] [通知]子pid 35205終了信号セグメンテーション違反(11)
 [2015年4月30日08:29:22] [通知]子pid 35206 exit signal Segmentation fault(11)
 [Thu Apr 30 08:29:24 2015] [notice] child pid 35207 exit signal Segmentation fault(11)
 [Thu Apr 30 08:29:24 2015] [通知]子pid 35208終了信号セグメンテーション違反(11)
 [Thu Apr 30 08:29:27 2015] [通知]子pid 35165終了信号セグメンテーション違反(11)
 [ 2015年4月30日08:29:29] [通知]子pid 35214終了信号のセグメンテーションエラー(11)
 [2015年4月30日08:29:39]通知[子] pid 35229終了信号のセグメンテーションエラー(11)
 [2015年4月30日08:29:44] [通知] child pid 35230 exit signal Segmentation fault(11)
 [Thu Apr 30 08:29:44 2015] [通知]子pid 35231終了信号セグメンテーションエラー(11)
 [2015年4月30日08:29:49] [通知]子pid 35242終了信号セグメンテーションエラー(11)
 [木4月30 08 :29:50 2015] [通知]子pid 35241終了信号セグメンテーションエラー(11)
 [Thu Apr 30 08:29:52 2015] [通知]子pid 35213終了信号セグメンテーションエラー(11)
 [Thu Apr 30 08:29:52 2015] [notice] child pid 35215 exit signal Segmentation fault(11)
 [Thu Apr 30 08:29:52 2015] [notice] child pid 35262 exit信号セグメンテーション違反(11)
6
nelaaro

これは単純な構文の問題でした。

vim /etc/php.ini

;スクリプトが消費するメモリの最大量(128MB)
; http://www.php.net/manual/en/ini.core.php#ini.memory-limit
memory_limit = 1536

問題は、私が変更したラインにありました。

memory_limit = 1536M

メモリ割り当てを示すサフィックスを指定しない場合、デフォルトでバイト単位でメモリ割り当てが行われます。そのため、Apacheが開始しようとする各プロセスは、適切にロードされる前にメモリ不足になり、したがってSegフォルトが発生します。

This sets the maximum amount of memory in bytes that a script is allowed to allocate.http://php.net/manual/en/ini.core.php#ini.memory-limit

私がこの答えを投稿しているのは、パニック状態で20分間グーグル操作した後、何が起こっているのかを調べようとしたためです。この問題に対する明確に説明された単一の解決策は見つかりませんでした。

10
nelaaro