タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

linuxとmod_rewriteに関するrochefortのブックマーク (4)

  • mod_rewriteの考え方。 - こせきの技術日記

    http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html を見ながら。 URLが正規表現(A)にマッチし、かつ 文字列(B)が条件(C)を満たす場合に、 URLを(D)に書き換える。 というのが基。 RewriteRule URLが(A)の正規表現にマッチしたら(D)で書き換える。 正規表現(A)は、リライトを実行するかどうかの条件(真偽値)であって、置換 url =~ s/(A)/(D)/ ということではない。たとえば、以下のような正規表現でリライトされる。 Google Code Search # 1文字マッチしたらリライト実行。空文字列でなければ実行する。 RewriteRule . index.php [L] Google Code Search # 先頭にマッチしたらリライト実行。常に実行する。 RewriteRule ^ -

    mod_rewriteの考え方。 - こせきの技術日記
  • 第15回 知っておきたいApacheの基礎知識 その11 | gihyo.jp

    mod_rewriteの記事ももう3回目になります。なかなか慣れるまではクセのあるモジュールですが、非常に便利なモジュールであることは認識していただけているかと思います。 さて、前回では正規表現を利用したURLの書き換えを実践してきました。今回はよりmod_rewriteを使いこなしていきましょう。 rewrite_ruleの適用条件を指定する 1つのURL書き換えを行うときはあまり気になりませんが、複数のアプリケーションをハンドリングしようとなってくると条件を指定したくなるものです。そこで、RewriteCondというディレクティブを使用しましょう。「⁠○○という条件のときは、RewriteRuleを適用する」といったif文のような記述をすることができます。 それではhttpd.confのVirtualHostの内容を以下のものに変更をしてみましょう。 <VirtualHost *:80

    第15回 知っておきたいApacheの基礎知識 その11 | gihyo.jp
  • 第14回 知っておきたいApacheの基礎知識 その10 | gihyo.jp

    さて、前回はmod_rewriteの基的な動作を説明しました。mod_rewriteができることの概念は理解できているかと思います。今回は、より実践的なmod_rewriteの使い方に踏み込んでいきたいと思います。 CGIを有効にする まずはmod_rewriteに取り掛かる前にやるべきことがあります。QueryStringで受け取った値を参照したりしたいため、アプリケーションを稼働させる環境を作りましょう。 今回はmod_cgiを利用して、perlで設定してみようと思います。 それでは現在使用しているVirtualHost内にCGIの設定を追加しましょう。 下記の設定を追加してください。 <VirtualHost *:80> DocumentRoot /usr/local/apache2/vhosts/www.example.com/htdocs ServerName www.exam

    第14回 知っておきたいApacheの基礎知識 その10 | gihyo.jp
  • 第13回 知っておきたいApacheの基礎知識 その9 | gihyo.jp

    今回は、URLの書き換えに役立つモジュール「mod_rewrite」について解説します。 自分が使っているWebサービスのURLを気にしたことがありますか? Webサービスで使うURLは静的なページのようにすっきりとさせているケースが多いですね。実際はQueryStringでパラメータを渡して、アプリケーションはその値を参照していることもありますが、SEO的に不利になってしまうケースがあります。そのようなことが起きないために、Apache内部でURLを書き換えてアプリケーションへ渡すといった動作をさせることができます。 今回はURLの書き換えをするときに活用ができる、mod_rewriteを紹介していきます。 mod_rewriteでできること mod_rewriteができることは、URLの書き換えです。その書き換えパターンが非常に高機能なことから、「⁠スイス製のアーミーナイフ」と表現され

    第13回 知っておきたいApacheの基礎知識 その9 | gihyo.jp
    rochefort
    rochefort 2009/06/09
    ワンライナーでログ調査。perl -e 'open($fh,"./access_log"); while(<$fh>){if($_ =~ /^([0-9.]+)/){$log{$1}+=1}} ; foreach $line (sort keys %log){ print "$log{$line} \t $line \n" } ; close ($fh)'
  • 1