.htaccess の書き方

前回の、エラーページのカスタマイズ よりも先き書くべきでしたが、今回は .htaccess の書き方についてです。

.htaccess を記述する際の注意点・特徴

  1. URLは基本的にフルパスで書く

    つまり、URLを記述する際の最初の / の前には、ホスト名(このサイトで言えば、http://vavevoo.web.fc2.com)が省略されているので、このページは /page/contents/c-028-htaccess-point.html となる。

  2. コメントは # の後に書く(改行するまでがコメントになる)
  3. 必ず改行すること(記述した最後の行でも)
  4. 正規表現を使用できる

    正規表現とは、キーワードとなる文字列を、特殊文字を使用または組み合わせることで表現する方法のこと。

    主に正規表現に使用される特殊文字と意味

    '~' : チルダ
    パターンマッチ。検索や条件の対象に、どのようなパターンを一致させるかを指定するために使用。
    '()' : カッコ、パーレン
    この中の文字列がまとめて一致するかどうかに使用される。
    '[]' : 角カッコ、ブラケット
    この中の文字のいずれか、という場合に使用。1つでも該当すれば一致したことになる。
    '-' : ハイフン
    ~から~までという意味。'[]'と合わせて [A-Z] なら、A から Z のいずれかということ。
    '^' : キャロット
    行頭という意味。パターンマッチの際に、この記号を文字の前に置くことで、指定された文字が行の頭にある場合のみ、一致したこととなる。
    '$' : ドル記号
    行末という意味。パターンマッチの際に、この記号を文字の後に置くことで、指定された文字が行の最後にある場合のみ、一致したこととなる。
    '[^]' : ブラケット内にキャロット
    '[]' のみとは逆に、この文字の中にない場合一致したことになる。
    '|' : パイプライン
    「または」,「or」という意味。
    '!' : エクスクラメーション
    否定という意味。この文字の後にある文字列以外なら一致したことになる。
    '\' : バックスラッシュ(日本語環境で表示すると '¥' となる)
    エスケープシーケンス。単独では正規表現扱いとなる記号を文字として表すために使用。

    例 : \. は . 自体を表す。

    または逆に、特殊な文字を正規表現扱いするために使用。

    例 : \n は 改行を表す。

    '$1'
    置換、置き換え。ワイルドカードで代替した文字をそのまま置換する。数字は、その行での代替した順番の指定。

    例えば '$2' なら、その行で2番目に代替された文字を置換する。

  5. ワイルドカードが使用できる

    ワイルドカードとは、検索する際にどんな文字列にも当てはまる特殊文字のこと。

    主に使用されるワイルドカード

    '.' : ドット
    改行以外の任意の1文字に代替する。改行以外ならどんな文字でも一致したことになり、他のワイルドカードと組み合わせる事で、任意の1文字以上を条件に出来る。

    例:'.*' で、任意の文字が0個以上繰り返される場合、一致することになる。

    '?' : クエスチョン
    直前の文字が0個か1個ある場合に代替する。
    '*' : アスタリスク
    直前の文字が0個以上繰り返される場合で、最長なものに代替する。
    '@' : アット
    直前の文字が0回以上繰り返される場合で、最短なものに代替する。
    '+' : プラス
    直前の文字が1個以上繰り返される場合で、最長なものに代替する。
    '#' : シャープ
    直前の文字が1個以上繰り返される場合で、最短なものに代替する。

.htaccess では、正規表現とワイルドカードを組み合わせることで、条件を指定する際のパターンマッチに使用することができます。

スポンサードリンク

inserted by FC2 system