タグ

mod_rewriteに関するrochefortのブックマーク (9)

  • mod_rewriteをnginxに移植するコツはifを使わないコト!

    こんにちは。CTOの馬場です。 このエントリはnginxアドベントカレンダーの4日目です。 みんな大好き mod_rewrite をnginxに移植するコツをさらっと紹介します。 結論 まず server とか location を使おうとする try_files など他の方法がないか考える どうしてもどうしてもダメなら map と if を使う 以上! コツは「とにかく if を使わない」ことです。 手続き的な書き方から宣言的な書き方に頭を切り替えるとうまく馴染めると思います。 例: wwwありでアクセスがきたらwwwなしに転送する server { listen 80; listen 443; server_name www.example.com; return 301 $scheme://example.com$request_uri; } rewrite 要りません。 例: サブ

    mod_rewriteをnginxに移植するコツはifを使わないコト!
  • Apache : mod_rewriteリファレンス - Flash/Web Application Weblog Directory

  • mod_rewrite_tips.html

    ドットインストール代表のライフハックブログ

    mod_rewrite_tips.html
    rochefort
    rochefort 2010/04/19
    RewriteLog /tmp/rewrite.log     RewriteLogLevel 9
  • apacheのmod_rewriteでURLの最後のスラッシュを補完 - hiro-takの日記

    以下を.htaccessに記述 RewriteCond %{REQUEST_URI} !/$ RewriteCond %{REQUEST_URI} !\.[^/\.]+$ RewriteRule .* %{REQUEST_URI}/ [L,R] URLがファイル名だと推測される場合 (最後の/以下のURLに.が含まれていた場合) にはスラッシュの補完をしないようにしています。

    apacheのmod_rewriteでURLの最後のスラッシュを補完 - hiro-takの日記
  • 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)'
  • mod rewriteを使用した簡易WAF

    (Last Updated On: 2018年8月8日)http://www.0x000000.com/?i=567 にmod rewriteを利用した簡易WAF(Web Application Firewall)の定義例が掲載されています。同じようなアイデアをお持ちの方、既に似たような設定を使われている方も多いとは思います。 簡単なWAFですが、実用性も高いです。例えば、ヌル文字やHTML特殊文字のインジェクションは様々な攻撃で利用されます。アプリケーションで対処が忘れられがちなCOOOKIEやREFER、USER_AGENT等に特殊文字が入っていた場合にアクセスを拒否する部分だけもで導入する価値は十分にあると思います。 元ネタのサイトは英語ですが、解説付きです。 これを入れると問題となる場合もあるので、内容を理解してから利用しなければなりません。 RewriteEngine On Op

    mod rewriteを使用した簡易WAF
  • 1