筆者が一般的なウェブサイトを作るときに、ルートに置いている.htaccessです。

AddType application/x-httpd-php .html .php .phps
ErrorDocument 404 /error.html

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www.example.com?
RewriteRule ^(.*) http://example.com/$1 [R=301,L]

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

1行目:HTML文書でPHPを有効にする

最近は、共通部分にPHPインクルードを使用することが多いので、だいたい入れています。

エックスサーバーでは記述方法が以下のようになります。 (PHPのどのバージョンを有効にしたかで異なります。下記はPHP5.2の場合です)

AddHandler x-httpd-php5.2 .html .php .phps

2行目:「ページが見つかりません」ページのhtmlファイルの場所

この記述の場合、ルート直下のerror.htmlが表示されます。

4行目:mod_rewriteを有効にする

CMSなどを置くとだいたいONにすることになります。

6・7目:www付・wwwなしドメインを統一する

この例では「www付きドメインのアクセスをwwwなしに転送」します。 www付きをオフィシャルにしたい場合は、記述が逆になります。

9・10行目:index.html付きのアクセスをスラッシュと統一する

http://example.com/index.htmlにあった場合、http://example.com/にリダイレクトします。