a-blog cms の .htaccess の改良で高速化

1ヶ月くらい前に a-blog cmsの.htaccessを修正 というエントリーを書いていましたが、さらに改良版が昨日用意され、このサイトにも使ってみました。

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .* - [L,E=rewrite:true]

RewriteRule .* ./ [L,E=rewrite:true]

の部分を、以下のようにします。

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} (.*(^|/)[^\./]+)$
RewriteRule .* %1/ [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (^|/)[^\./]*(/?$|\.(html|htm|xml|txt|js|json|css)$) index.php [L]

次のバージョンの 1.2.2 の標準になる予定でいます。 ご意見、ご感想があればお知らせ下さい。

RewriteCond %{REQUEST_FILENAME} -d

実ディレクトリがあったら、そちらを表示させたいという時に上記の設定があるのですが、どうやら無くても問題なさそうという事で設定から消えました。 一応、この設定があった方がいい人は追記して下さい。

追記:

さくらインターネットの場合には以下の設定が必要です。 RewriteEngine on の下にでも追加して下さい。

RewriteBase / 

という設定を追加しないと正常に動作しない事もあるようです。 http://www.example.com/blog/ に a-blog cms をインストールしているという場合には、RewriteBase /blog/ である必要があります。


blog comments powered by Disqus

Re:a-blog cms の .htaccess の改良で高速化

あたらしいhtaccessを使って思ったんですが、
htaccessに
ErrorDocument 404 http://YOURDOMAIN/404.html
みたいなのを追加したほうがよいのでは?
html|htm|xml|txt|js|json|css以外の拡張子でアクセスされたとき、サーバーの404がでるので、ablogcmsのデフォルトの404に飛ばすとかいかがでしょう?
例えば、サイトの引越のときに、前のサーバーがwinちゃんだったときに.aspでブックマークされていたり....等々です。
標準で入れるのは、むずかしいのかもしれませんが...

masami y

Re:a-blog cms の .htaccess の改良で高速化

うちの環境だとurlにファイル名をつけるとnot foundになってしまいます。
たとえば、

htttp://test.com/test/ →OK
htttp://test.com/test/index.html →NG
htttp://test.com/test/testpost.html →NG

ooT

プロフィール

山本一道
  • Twitter
  • Facebook
  • Google+

有限会社アップルップル

山本 一道

名古屋のホームページ制作会社「有限会社アップルップル」の代表をしています。弊社で開発しているCMS「a-blog cms」や、名古屋の「WCAN」も、よろしくお願いします。

エントリーリスト

カテゴリーリスト

タグ