.htaccessファイルの作り方

テキストエディタで「.htaccess」ファイルを作る

テキストエディタで「.htaccess」ファイルを作る

それでは早速「.htaccess」ファイルを作ってみましょう。作り方はとても簡単です。必要なステップは次の2つです。

  1. テキストエディタを使って、必要な設定を記述する。
  2. それを「.htaccess」という特殊なファイル名で保存する。

たったこれだけです。簡単ですね。

強いて言えば、「.htaccess」というドット記号で始まるファイル名が特殊なので扱いに困ることがあったり、うまく動かない場合には文字コードや改行コードを気にする必要があったりするくらいです。それらの点についても、これ以降で詳しく解説しています。

【このページの目次】

.htaccessファイルの記述に必要な準備は、テキストエディタのみ

「.htaccess」ファイルはテキストエディタで作成できる

「.htaccess」ファイルはテキストエディタで作成できる

「.htaccess」ファイルはテキストファイルですから、テキストエディタがあれば作成できます。図のように、Windowsに標準搭載されている「メモ帳」でも作成できます。普段、HTMLやCSSを記述するのに使用しているテキストエディタがあるなら、それを使っても問題ありません。


 

.htaccessファイルの書き方:(例)デフォルトファイルの設定を変更

前ページでご紹介したように「.htaccess」ファイルの用途はたくさんあり、目的に合わせて異なる記述が必要です。「.htaccess」ファイルに記述する具体的な内容は、実現したい内容に合わせて前ページでご紹介した関連記事などをご参照下さい。

とはいえ、具体的な書き方の例がなければ試しに「.htaccess」ファイルを作ってみることができないので、ここではデフォルトファイルの名称を変更するカスタマイズを例にして解説いたします。

例:デフォルトファイル名を「index.html」以外にする
ファイル名を省略すると、index.htmlを指定した場合と同じ

ファイル名を省略すると、index.htmlを指定した場合と同じ

多くのウェブサイトでは、ファイル名を指定せずに「/」記号で終わるURLにアクセスすると、index.htmlというファイルにアクセスしたことになります。

例えば http://www.example.com/fdr/ というURLにアクセスした場合、実際には http://www.example.com/fdr/index.html というURLでアクセスできるファイルの内容が返されます。このindex.htmlのことを、デフォルトファイルと呼んでいます。

ここで「.htaccess」ファイルに以下の1行を加えると、デフォルトファイル名を変更できます。
DirectoryIndex toppage.php
上記のように記述した場合、「/」記号で終わるURLが指定された際には index.html ではなく toppage.php というファイルが表示に使われるようになります。

指定できるデフォルトファイル名は1つだけではないため、
DirectoryIndex frontpage.php headpage.shtml index.html
上記のように半角スペースで区切って複数のファイル名を列挙しておけば、複数の候補を優先順に指定できます。この場合、「/」記号で終わるURLが指定された際には、以下のような動作になります。

  1. frontpage.php ファイルがある場合にはそれが表示され、
  2. それがなくても、 headpage.shtml ファイルがあればそれが表示され、
  3. それがなくても、 index.html ファイルがあればそれが表示されます。

1~3のどれもがない場合は、ファイル一覧が表示されたり、「403 Forbidden」エラーになったりします。どちらになるかはサーバの設定次第です。ファイル一覧を表示するかエラーを表示するかの設定自体も「.htaccess」ファイルを使って指定できますが、その方法はここでは割愛します。

.htaccessというファイル名で保存する

ファイル名を「.htaccess」にして保存

ファイル名は「.htaccess」で保存

さて、ファイルの中身が記述できたら、それを「.htaccess」というファイル名で保存します。その際、次の3点に注意して下さい。

(1)ファイル名は、ドット記号で始まる「.htaccess」にする
ファイル名は「.htaccess」とします。ファイル拡張子はありません。先頭の「.」(ドット記号)を忘れないように注意して下さい。

(2)必ず最後に改行を入れる
「.htaccess」ファイル内の最後には必ず改行を入れて下さい。末尾に改行がないと動かない場合があります。編集時のミスを防ぐ目的で、適当に2~3行の空行を末尾に入れておくのがおすすめです。

(3)テキスト形式で保存する
「.htaccess」ファイルは、一切の書式情報を含まないテキスト形式(プレーンテキスト)で保存する必要があります。書式情報を付加できるエディタで作成する場合には注意して下さい。

※使用時にエラーが出る場合は、文字コードと改行コードにも注目してみて下さい。特に文字コードを「UTF-8」にして保存する場合は、BOMは付加しない方が無難です。詳しくは、最後のページでご紹介しています。


 

(注) 保存時に拡張子が自動で加えられないよう注意

Windowsに付属の「メモ帳」などを使って保存する際には、保存ダイアログの下部に表示される「ファイルの種類」欄を「すべてのファイル」に変更してから保存して下さい。標準の 「テキスト文書」のままだと、ファイル名の末尾に自動で「.txt」という拡張子が付加されてしまい、「.htaccess.txt」というファイル名で保存されてしまいます。

※ファイル拡張子を表示しないようにWindowsが設定されている場合(標準ではそう設定されています)には、気付きにくいので注意が必要です。

「.htaccess」の名称に拡張子が付加されないよう注意

「.htaccess」の名称に拡張子が付加されないよう注意



 

(注) 先頭が「.」(ドット記号)で始まるファイルを作成できない場合

お使いの環境やソフトウェアによっては、ファイルが「.」(ドット記号)で始まるファイル名を作成できないことがあります。例えば、以下のような場合です。

Windowsの場合
ドット記号で始まるファイル名に変更できない(Windows)

ドット記号で始まるファイル名に変更できない(Windows)

ファイル拡張子を表示するよう設定されたWindowsの場合は、既存ファイルの名称を「.」記号で始まる名称に変更しようとすると「ファイル名を入力して下さい」というエラーが表示され、名称を変更できません。

※ファイル拡張子を表示しないように設定されている場合は、「.」記号で始まる名称に変更できても、余計なファイル拡張子が付加されている可能性があります。


 
MacOSの場合
ドットで始まる名称はシステム用に予約されていると警告(MacOS)

ドットで始まる名称はシステム用に予約されていると警告(MacOS)

MacOSの場合は、「.」記号で始まるファイル名はシステム用に予約されていると警告されます。そのままファイルを作成することは可能ですが、ファイルそのものが非表示になってしまって、見えなくなります。


 
上記の場合は、とりあえず拡張子を付けて保存しておく
もしどうしても「.htaccess」というファイル名でファイルが作れない場合や、何らかの事情でそうしたくない場合には、とりあえず「htaccess.txt」などのような適当な名称で保存しても問題はありません。そのファイル名でサーバにアップロードしてから、FTPソフトの機能を使ってサーバ上のファイルのファイル名を「.htaccess」に変更すれば良いでしょう。

さて、「.htaccess」ファイルが用意できたら、最後にウェブサーバにアップロードしましょう。「.htaccess」ファイルはアップロード場所によって設定内容の影響範囲が異なります。望みの範囲にだけ効果が与えられるよう、場所に気をつけてアップロードして下さい。

それでは次のページで、「.htaccess」の設置(アップロード)方法をご紹介致します。