mod_rewriteとは Apacheのモジュールのひとつで、アクセスURLを正規表現で書き換えることができます。リダイレクト処理を行うのに便利なモジュールです。 モジュールの解説ドキュメントによれば URLを操作するためのスイス製のアーミーナイフ と例えられるほど、非常に複雑な処理を行えます。 URLからURLへ、同一サーバ内URLだろうが、別サーバURLだろうが問いません。 引数を含む動的URLを通常のHTMLファイルのような静的URLに見せることも可能です。 素晴らしく詳細なマニュアルもありますが、機能が多いだけに情報量が多く読むのも面倒だと思いますので、ここでは、mod_rewriteを使用すると便利な場面を想定して具体的に解説してみたいと思います。 mod_rewriteの基本 ひとまず、mod_rewriteはApacheのモジュールです。インストールされていなければ、サーバ
このように便利な Rewrite 機能は、個別ディレクトリに設置された .htaccess にも指定することができる。しかし、.htaccess に書けるのは RewriteEngine, RewriteBase, RewriteCond, RewriteRule だけで、ロギングに関する指定子などは書けないし、色々と注意すべきハマリ点がある。ここではそれらを一気に解説しようと思う。これは管理者になれない(=httpd.confを編集できない)一般ユーザにとっては重要な情報になるだろうね。 .htaccess は個別の公開ディレクトリに設置されて、細かい制御を出来るもので、よく個別ディレクトリにアクセス制限を入れたりするのに使う。しかし、いくつかの Apache 指定子は、ここにも書けるし、幸いなことに Rewrite機能(正確には mod_rewrite.so)は、この .htacces
実験サイト SFA-CMS では、「cms sfa」の検索結果は以下のような URL になっている。 http://www.sfa-cms.com/tag/cms+sfa 内部的には php が動作しており http://www.sfa-cms.com/search.php?q=cms+sfa という URL が呼び出されている。 「?」を含む動的 URL をそのままにしておいても google が検索しないということはないのだが、「Google は動的なページを登録しますか」にもあるように、基本的には静的な URL を構築したほうが良い。 静的な URL を生成する方法は、apache の場合 mod_rewrite を使うのが一般的である。 以下のような記述を httpd.conf (の従属ファイル)に記述することで、静的 URL での仮想アクセスが可能となる。 RewriteEngi
Rewrite 機能とは、Apache 1.2 で付け加わった機能であり、アクセスしたURLを正規表現を使って書き換えて処理する機能である。だから、既存機能としては Alias や Redirect と類似するが、さらに柔軟で、さまざまな使い道がある。違いを簡単に述べよう。 Rewrite, Alias, Redirect の比較 Alias 機能と ScriptAlias 機能 Alias はディレクトリ単位で、アクセスURLを DOCUMENT_ROOT から外れたディレクトリにマップする。CGIディレクトリに対して常識的に使われる ScriptAlias 指示子は、この Alias 指示子の機能に加え、そのディレクトリが実行可能なファイルを含み、その実行を許可するマークを付け加えている。逆に言えば、Alias 機能はそのようなマークアップを含まずに、単純に DOCUMENT_ROOT
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く