最近、低中程度のトラフィック(1000 UAU、忙しい日には5000ページビュー)のWebサイトを、共有ホスティングから、4つのクアッドコアプロセッサ(売られ過ぎの可能性が高い)と3GBのメモリで実行されるApacheとcPanelを備えたCentos 664ビットVPSに移動しました。 (Xen)。
私たちは最初から問題を抱えていました。サーバーがクラッシュし続けます。 PHPは、すべてのメモリを消費してサーバーをクラッシュさせるまで拡張し続けるようです。
一部の人々は、Apache/cPanel/PHP/mySQLを放棄し、nginX/Varnish/PHP-FPM/SQLiteを使用するべきだと提案しています。しかし、私は技術にあまり精通しておらず、ありふれた管理タスクを管理できるようにするためにcPanelのようなシンプルなGUIが必要なので、それは私には不可能です(システム管理者を雇ったり、完全に管理されたホスティングを取得する余裕はありません)。
私はWordPress用のApacheの最適化について議論しているいくつかの投稿に出くわしました。しかし、これらはすべて、2009年1月のこの4年前の記事のように、かなり古い記事につながります http://thethemefoundry.com/blog/optimize-Apache-wordpress/
記事はかなり詳細で役立つようですが、最初のステップでもつまずきます。私のhttpd.confには2つのloadmoduleコマンドしかありません
LoadModule fastinclude_module modules/mod_fastinclude.so
LoadModule bwlimited_module modules/mod_bwlimited.so
だから私はすぐそこに完全なバストに行きます。さらに、私のhttpd.confは言います
Apache構成ファイルへの直接の変更は、その後の構成ファイルの再生成時に失われる可能性があります。変更を保持するには、/ usr/local/cpanel/bin/Apache_conf_distillerを実行して、すべての変更を構成システムにチェックインする必要があります。
WHMのモジュールを変更する場所を見つけるのに問題があります。
誰かがWordPress用にApacheを最適化する方法に関する最新のガイドラインを手伝ってくれませんか?どうもありがとう!
P.S. WordPressインストールにはWPスーパーキャッシュもインストールされています。
P.P.S。また、phpBB、OpenCart、MenaltoGalleryもインストールしています。
更新:
最終的にはPHP 5.3.3メモリリークです。まったく偶然に発見されました。当初はApacheが原因だと考えられていました。nginxへの移行やVarnishをインストールします。RAM全体を使用するのに時間がかかりましたが、必然的にそこにたどり着きました。最後に、NewRelicの助けを借りて、PHPアプリは時間の経過とともにメモリ使用量を増やしていました。 .processesが強制終了されることはありませんでした。PHPを5.4.16にアップグレードし、それ以来、すべてがひどい状態になっています。
私の経験から、Apache/PHPを再コンパイルしていないようです。私はこれを想定しています。その場合は、次のようにしてください。
WHMにログインし、Main >> Software >> EasyApache (Apache Update)
に移動します
Start customization based on profile
_をクリックしますExhaustive Options List
_を選択し、メモを取りますmod_fcgid
_- PHPとsuPHPのインストールをスピードアップするのに役立ちます。メタスレッドに残しておくことができるので、どちらが優れているかについては詳しく説明しません。グーグル。Mod SuPHP
_- PHPスクリプトをユーザーではなくユーザーとして実行するように強制することにより、PHP)を保護するのに役立ちますnobody
frontpage
-役に立たず、非推奨で、数か月前までは、cPanelのデフォルトとして選択されていました。IonCube Loader for PHP
_を選択してください。Mod Security
_を選択してセキュリティを確保します。これにより、ボットやその他の厄介なことが発生するのをhelp防止しますwordpress install 。Google _Mod Security
_について詳しく知りたい場合は、.Zend Optimizer for PHP
_を選択すると、PHPの一部が最適化され、Zendフレームワークで便利になります。Xcache for PHP
_を選択します。これにより、ページのパフォーマンスが向上します。Bcmath, Bz2, CGI, Calendar, Curl, CurlSSL, Curlwrappers, Dbase, Exif, FTP, Fastcgi, Force CGI Redirect, Gd, Gettext, Iconv, Imap, MM, Magic Quotes, MailHeaders, Mbregex, Mbstring, Mcrypt, Mhash, Mime Magic, Mysql , Mysql of the system , MySQL "Improved" extension. , Openssl, PDO, PDO MySQL, POSIX, Path Info Check, Pear, Pspell, Sockets, TTF (FreeType), Tidy, Wddx, XSL, XmlRPC, Zend Multibyte, Zip, Zlib
Main >> Service Configuration >> Configure PHP and SuExec
_の下で_PHP 5 Handler
_を_suPHP.
_に選択しますうまくいけば、これはあなたのパフォーマンスを向上させるでしょう。より具体的な情報がなければ、これが私たちにできる最善のことです。これが引き続き発生する場合、または詳細情報を提供する場合は、専門家を雇うことをお勧めします。