.htmlの非表示化

.htmlの非表示化

.htaccessを用いた.htmlの非表示化について

モビライズではデフォルトで.htmlの拡張子が入ります
そもそも拡張子は必ず必要なのでしょうか?答えはyesです。サイトの各ファイルにはファイル拡張子(.htmlなど)を付ける必要があることです。削除はできません。

しかし、サイト運営者によっては、.html拡張子を非表示にしたい場合もあるかも知れません。

拡張子があることによってブラウザは初めて各ページのファイルを読むことができます。この拡張子を非表示にする場合は、サーバサイド(.htaccessファイル)で表示のコントロールを行います。


.htaccessへの記述

Mobirise htmlを取り除く
.htmlあり、なしどちらでもアクセス可としたい。

.htaccessファイルに次の記述を行います。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html

記述が終わればサーバへアップロードします。
.htaccessファイルは必ず、index.htmlファイルが置かれている場所へ設置します。
.htmlなしでもページが表示されるか、ブラウザ上で試してみましょう!


URLをindex.htmlなしに統一する

モビライズを使って下層ページは.htmlを表示させたい。
トップページだけはindex.htmlを非表示にしたいという場合もあろうかと思います。
その場合は、以下のように.htaccessファイルに記述します。


RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ http://yourdomain.com/$1 [R=301,L]

yourdomain.comはあなたのドメイン名に置き換えて記述してください。

www有り無しを統一する

その他、サイト公開時に取り組んでおきたい、.htaccessのコントロールとして、wwwのありなしサイトの統一です。

クローラーが別サイトとして認識し、重複サイトと判断されない為にwww.の有無を統一しましょう。

例えばsample.comとwww.sample.comの両方でアクセスできてしまうと、クローラーに正しくインデックスされるのに時間を要してしまいます。
さらに重複コンテンツサイトと判断されるとオーガニック経由での集客に大きく影響が出てしまいます。

.htaccessへの記述法はいくつかありますが、以下の記述を追加しましょう。


wwwありに統一する
RewriteCond %{HTTP_HOST} ^sample\.comRewriteRule ^(.*)$ http://www.sample.com/$1 [R=301,L]

wwwなしに統一する
RewriteCond %{HTTP_HOST} ^www\.sample\.comRewriteRule ^(.*)$ http://sample.com/$1 [R=301,L]

※ SSLの有無やドメインは適宜置き換えてご使用ください。


.htaccessファイル作成時の注意点

.htaccessの設置
.htaccessの挙動に影響がでるため改行コードは忘れずに

.htaccessファイルは大変便利なファイルです。様々な挙動動作を複数記述して、コントロールできます。

しかし注意点もあります。無料サーバでは動作しない場合があります。必ず有料のサーバをホスティングしましょう。

もう一点、ソースの最後には必ず改行コードを入れるようにしましょう。
改行コードはCR,CRLF,LFと種類がありますが、LFがオススメです。