RewriteMapを使うとテキスト形式のマップファイルを使ってURLを書き換えたり、Perl等の外部プログラムを使ってURLを書き換えることができる。 以下ではPerlスクリプトでURLの書き換えを行なう例を示す。 外部プログラムを使用したURL書き換えサンプルとしてURL書き換えの際、文字列をescape(URLエンコード)する書き換えを行なう。escape処理を外部プログラムに行なわせる。 RewriteMapでマップ名(以下ではescape-map)と外部プログラム(以下ではescape.pl)を指定する。prg:は外部プログラムであることを意味する。escape.plは標準入力から受け取った文字列をescape(URLエンコード)して返すPerlスクリプト。 escape-mapはRewriteRuleから参照する。${escape-map:$2}は$2をescape-map(つ
Apacheのmod_rewriteを使って、フェイルオーバーみたいなことができないかと思い、ちょっとやってみることにしました。 フェイルオーバーといったら大げさな感じですが、もうちょっと本格的にやるならmod_proxy_balancerを使ったほうがいいと思うので。。。 現在下記のような構成で運用しているサーバがありますが、静的ファイルを配信するサーバBが落ちている場合やオフになっている場合などは、サーバBから配信したいという感じです。 サーバA -> CGIの処理や比較的軽いHTMLを処理 サーバB -> 主に画像などの重たい静的ファイルを処理かなり限定的な環境だと思うのですが、サーバAで一度リクエストを受け、画像ファイルだけをリダイレクトでサーバBに転送しています。 なので、サーバBが落ちていたりした場合、サーバBに転送せずにサーバAで返却したいというわけです。サーバAでも同じデー
## 追記 改めて自分の書いた記事を見たら日本語の意味がよくわからないw 結論はRewriteCondに[OR]を書くと、次のRewriteCond とのORになる、ということ ## 追記おわり ANDのほうが優先順位高いと思ったら、RewriteCondはORのほうが上なのか? 携帯から/m/以外にアクセスした場合は/m/に飛ばしてください、と頼まれた。こんな感じ。(例なのでdocomoとauだけに省略) 条件A: URLが/m/以外 条件B: UAがdocomo 条件C: UAがauとすると、設定したいのは"条件A かつ (条件B または 条件C)"の場合。 試しにこういう風に書いてみて RewriteEngine On ## 条件A RewriteCond %{REQUEST_URI} !^/m/ ## 条件B RewriteCond %{HTTP_USER_AGENT} ^DoCo
こんにちは、 最近愛用のMacbookが外観も中身もボロボロになってきて悲しいkyannyです。 ライブドアでは、画像やCSSファイルやjavascriptファイルなどの静的なコンテンツを配信するウェブサーバとウェブアプリケーション本体が稼働するアプリケーションサーバを別々のホストで運用する、いわゆるリバースプロキシ環境を構築しています。今回は、このリバースプロキシ環境の作り方を解説します。 リバースプロキシとは リバースプロキシとはプロキシサーバの一種で、クライアントに対してファイアウォールの中にあり外部のネットワークから直接アクセスできないサーバへのアクセスを提供する機能です。これ以外にも、複数のバックエンドサーバを用意して負荷分散をしたり、プロキシサーバでキャッシュを併用することでバックエンドサーバへのリクエストを減らしたりと、様々なシーンで活用できるため、大規模なウェブサイトを構築
often find unexpected finds among the things they leave behind. Used to warn against rushing ahead
今回は、URLの書き換えに役立つモジュール「mod_rewrite」について解説します。 自分が使っているWebサービスのURLを気にしたことがありますか? Webサービスで使うURLは静的なページのようにすっきりとさせているケースが多いですね。実際はQueryStringでパラメータを渡して、アプリケーションはその値を参照していることもありますが、SEO的に不利になってしまうケースがあります。そのようなことが起きないために、Apache内部でURLを書き換えてアプリケーションへ渡すといった動作をさせることができます。 今回はURLの書き換えをするときに活用ができる、mod_rewriteを紹介していきます。 mod_rewriteでできること mod_rewriteができることは、URLの書き換えです。その書き換えパターンが非常に高機能なことから、「スイス製のアーミーナイフ」と表現され
検索システムなど閲覧者が求める情報を動的に表示させるサイトでは、 http://masha.maakikaku.jp/index.php?mode=search&type=hiphop こんな感じにURLへ?やら&やら引数がだらだらと付いていきます。 サーチエンジン対策上このままじゃあかんということで、 例えば上記のURLを下記の静的URLで表示させるようにしたい。 http://masha.maakikaku.jp/index/search/hiphop.html これを実現する為には様々な方法があるようなのですが、 ベストの選択は Apache の mod_rewrite を利用する方法のようだ。 が、私が使う 「さくらのレンタルサーバでは、mod_rewriteが利用できない」 ・・という情報をどこかで見て何も考えず違う方法でがんばったのだが、 やり終わった後に はっΣ(`Д´;)
URL を操作するためのスイス製のアーミーナイフ、mod_rewrite へようこそ! このモジュールは、(正規表現パーサに基づく)ルールベースの 書き換えエンジンを使い、要求された URL を適宜書き換えます。 サポートするルールの数、および各ルールを適用する際のルール条件 の数に制限はなく、本当にフレキシブルでかつパワフルな URL 操作 メカニズムを提供します。この URL 操作に先立ち、次のようにいろいろな 評価を行なうことができます。たとえばサーバ変数、環境変数、HTTP ヘッダ、 タイムスタンプ、さらに外部データベースの検索結果までを評価の対象として、 各種のフォーマットを使った粒度の高い URL マッチングを実現できます。 このモジュールは、サーバ単位のコンテキスト (httpd.conf) およびディレクトリ単位のコンテキスト (.htaccess) において (PATH-
「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く