高速化設定:htaccessへ書いたこと.

夕焼に風船

ウェブシュフさんが、SEOや高速化について色々書いてくださってるのでとても助かっています。
SEO|ウェブシュフ

やれることからやってみようという事で、やってみたのは「.htaccess」の改造。

なので、今回はブログの表示を高速化するために”.htaccess”に書いたことを公開。

通常なにもしていない場合の”.htaccess”の内容

AddHandler php5-script .php

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

今回改造した”.htaccess” の内容

AddType image/x-icon .ico

<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ico)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI _\.utxt$ no-gzip
#DeflateCompressionLevel 4
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
</IfModule>

<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 0 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 604800 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 216000 seconds"
</ifModule>

FileETag none

<FilesMatch "^(wp-config\.php|wp-mail\.php|install\.php|\.ht)">
order allow,deny
deny from all
</FilesMatch>

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !\.(html?|xml|xsl|js|css|jpe?g|png|gif|ico)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

当初、26行目の「text/html」 のキャッシュ保持を「access plus 1 seconds」にしてたけど、更新しても反映されなかったり、ROSEが「FBで更新が出てたから来てみてもトップページにはなかった」って言ってたりしたので、「access plus 0 seconds」に変更。

2013/11/29 「access plus 0 seconds」にしていても、トップページに更新が反映されないので、
25,26行目のデフォルトでのキャッシュの設定とtext/htmlに対しての設定を削除してみた。
しばらく様子見。
「modification plus」は、意味ないよね~?
どうしたらいいのかな~?
削除した部分↓

ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 0 seconds"

2013/12/1 他のサイトでは問題なく動作しているので、元に戻しました。参考サイトのとおり、「ExpiresByType text/html “access plus 1 seconds”」にしています。

ExpiresDefault "access plus 1 seconds"
ExpiresByType text/html "access plus 1 seconds"

2014/1/9 

やはり、頻繁にご訪問いただいている方に最新の情報が表示できていないようですので、htaccessを元に戻したうえで↓をヘッダに追記しました。

表示速度が若干遅くなってしまいますが、しばらく後に↓は削除する予定です。

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="Thu, 01 Dec 1994 16:00:00 GMT">

参考:ブラウザ のキャッシュを制御する/no-cache

参考サイト

【Wordpress高速化日記】.htaccessの書き換え効果絶大、Lazy Load系プラグインの停止、SNSボタン削減も効果あり |ウェブシュフ

WEBページの表示を高速化する為のサイト側の設定 – PC-ZERO Blog

WordPressサイト用の.htaccess例 | dogmap.jp

ページの表示速度を改善する方法 | Web Design Leaves

画像:ぽんた@バルーンさんの夕焼けの大空に・・・ – 写真共有サービス 「写真部」 byGMO

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA