rewrite」についてまとめています。rewrite【mod_rewrite】フラグスポンサードリンク【mod_rewrite】フラグmod_rewriteで使用するフラグをまとめています。スポンサードリンクRewriteCondで使用するフラグNC大文字小文字の区別をせずにパターンマッチを行う。case」ORRewriteCondの条件を「or」でつなぐ上記フラグは、RewriteCondの第3引数で指定します。[○○]複数のフラグを使う場合はカンマで区切ります。[NC,OR]RewriteRuleで使用するフラグR指定したURLにリダイレクトする。(redirect)【例】「R=301」で301リダイレクトF現在のURLへのアクセスを禁止にする(403エラーを返す)。(forbidden)G現在のURLを消去済みにする(410エラーを返す)。(gone)P強制的に置換対象部を内部的にプロキシリクエストとみなし、その場でプロキシモジュールを通して出力する。(proxy)LここでURL書き換え処理を中止し、それ以降の書き換えはしないようにする。(last)NURL書き換え処理を、最初の書き換えルールから再度実行する。永久ループを作らないように留意する。(next)C現在のルールを次のルールにチェインする。次のルールも、後続のルールなどにチェインすることもできる。※一つ目のRewriteRuleでパターンマッチすれば次のRewriteRuleに処理が移るが、一つ目でパターンマッチしなければそこで処理は終了する(2つ目のRewriteRuleは処理されない)T=MIME-typeターゲットファイルのMIMEタイプを強制的にMIME-typeにする。(type)NS現在のリクエストが内部のサブリクエストである場合に、書き換えエンジンが書き換えルールをスキップするようにする。sub-request)NC大文字小文字の区別をせずにパターンマッチを行う。[NC]QSA置換文字列の中でマッチしたものを書き換えるのではなく、そこにクエリー文字列部分を追加するようにする。書き換えルールを通してクエリー文字列に何かデータを追加したい場合に使用する。append)NEmod_rewriteが書き換え結果に対して通常行うURLエスケープルールを適用しないようにする。通常、特殊文字(%、$、;など)は16進数の文字列にエスケープ処理される()が、このフラグを使用することでエスケープ処理を抑制することができる。これにより、出力の中にパーセント文字を使うことができる。%3d」となるのを抑制するPT内部のrequest_rec構造体のURIフィールドにfilenameフィールドの値をセットする。その後、URIからファイル名への変換処理を行なうAlias、ScriptAlias、Redirectといったディレクティブを設定する。PTフラグをつけた場合、Lフラグも指定したと見なされる。現在のルールがマッチしたら、次の数字番目のルールをスキップする。rule)E=VAR:VALVARという名前の環境変数の値をVALにする。VALには、正規表現の後方参照として展開される$Nと%Nを書くことができる。このフラグを複数使って、複数の変数を定義することもできる。$ENV{'VAR'})のように参照される。%{ENV:VAR}を通して参照することもできる。これを使ってURLからの情報を切り取って記憶する。variable)上記フラグは、RewriteRuleの第3引数で指定します。[○○]複数のフラグを指定する場合はカンマで区切ります。405コメントまだコメントはありません。