最近、このサイトを最適化するためにいくつか頑張った事があるので記録として残します。
WordPress高速化
このサイトはWordPressを使用しています。
ページ表示がとっても遅かったので、高速化のためにいくつかやってみました。
1.MO Cache導入
翻訳ファイルをキャッシュするみたいです。
ここのサイトが詳しいです。
WordPress をたった3分で3倍高速化する方法 [MO Cache]
私は上のサイトにある「3分しか時間がない人向け」ではなく「VPS や専用サーバで WordPress を利用している方 APC + APC Object Cache Backend」の方法を採用しました。APCというのは、PHPアクセレーターというものらしいです(WordPressがPHPで作られています)。
APCはyumでインストールしました。
sudo yum install php-pecl-apc --enablerepo=remi
…あまり早くならなかったので、次の手を打ちました。
2.WP Super Cache導入
アクセスがあったHTMLをキャッシュするプラグインです。
PHPは、アクセスがあるたびに動的にHTMLを生成します。同じURLにアクセスしたら同じ内容を返却すればいいコンテンツの場合、アクセスの度にHTMLを生成する必要がありません。このプラグインを導入すると、いちど生成したHTMLを一定期間キャッシュしてくれます。
…劇的に早くなりました。
3.gzip圧縮を有効に
最近のブラウザは圧縮してあるコンテンツを受信する機能があります。
サーバからコンテンツを返却する際に圧縮する設定をapacheに入れます。
/etc/httpd/conf/httpd.confを開いて、以下を追加したら完了です。
<Location /> # Insert filter SetOutputFilter DEFLATE # Netscape 4.x has some problems... BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.06-4.08 have some more problems BrowserMatch ^Mozilla/4\.0[678] no-gzip # MSIE masquerades as Netscape, but it is fine BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # Don't compress images SetEnvIfNoCase Request_URI \ \.(?:gif|jpe?g|png)$ no-gzip dont-vary # Make sure proxies don't deliver the wrong content Header append Vary User-Agent env=!dont-vary </Location>
wwwなしに統一
このサイトのURLは”risaiku.net”です。wwwをつけて”www.risaiku.net”でアクセスすると、エラーになってしまうのが気になっていました。ただ、どっちでもアクセスできるのも何だか嫌だな、と思っていました。そこで、www.risaiku.netでアクセスされたらrisaiku.netへリダイレクトするように設定します。
1.DNSレコードの登録
今までAレコードしか登録していなかったのですが、CNAMEレコードとして以下のように登録します。
これで完了です。wordpressをドメイン名直下で公開している場合、www付きでアクセスされてもwww抜きのURLにリダイレクトしてくれます。ネットで調べるとapacheのVirtualHostのことばかりがヒットしたので少し苦戦しました。
ではでは。