.htaccess で mod_rewriteをする方法。

www.aaa.com/a_dir/
の中のファイルにアクセスされたとき、
www.bbb.com/a_dir/
の中にあるファイルを表示させたいと思っています。

これをするためには、どこに.htaccessを設置して、どう書けばいいのでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/12/30 17:12:34
  • 終了:2007/01/06 17:15:03

回答(3件)

id:kn1967 No.1

kn1967回答回数2915ベストアンサー獲得回数3012006/12/30 17:24:58

ポイント27pt

RewriteRule (/a_dir/.+) http://www.bbb.com/$1 [R,L]

$1が(括弧)でくくった部分に置き換わって実行されます。

他にもルールがあるならばR,Lの部分は適宜修正してください。

http://japache.infoscience.co.jp/rewriteguide/#ToC16

id:dingding

ありがとうございます

2006/12/30 17:27:47
id:b-wind No.2

b-wind回答回数3344ベストアンサー獲得回数4402006/12/30 21:53:20

ポイント27pt

http://www.net-newbie.com/trans/mod_rewrite.html

内容は1番の方とだいたい同じですが、若干補足。


設置場所は www.aaa.com/a_dir/ と同じ場所で、(便宜的に表現すると)www.aaa.com/.htaccess になります。


また、方法は2種類あってリダイレクト使用する方法。

RewriteEngine On
RewriteRule /a_dir/(.*) http://www.bbb.com/a_dir/$1 [R,L]

Apache の Proxy 機能を使用する方法。(要 mod_proxy)

RewriteEngine On
RewriteRule /a_dir/(.*) http://www.bbb.com/a_dir/$1 [P,L]

違いはリダイレクトだと、アクセスしたファイルの実体が www.bbb.com にある事がユーザーにも分かりますが、プロキシを使用するとユーザーからは判別できず透過的に見えることです。

id:dingding

2つの方法とも負荷はそれほど変わらないのでしょうか?

どちらの方がいいということはあるのでしょうか?

2006/12/30 23:08:55
id:kn1967 No.3

kn1967回答回数2915ベストアンサー獲得回数3012007/01/02 16:51:53

ポイント26pt

>2つの方法とも負荷はそれほど変わらないのでしょうか?

Proxy(代理)はwww.aaa.com/のサーバーが、www.bbb.com/のサーバーからホームページを受け取って、自分の所にあるが如くユーザーに返すという事を行いますので単純に飛ばすだけのリダイレクトとは比べ物にならないほど負荷が大きいです。

大きな負荷はかかりますがProxyにもキャッシュがありますのでwww.bbb.com/にあるページが静的なものであれば、2回目以降のアクセス時には大きな負荷にはなりません。

サーバーの裏でサーバーを動かしたい。あるいは、ファイルの実態がどこにあるのかを秘匿したいといった場合にはProxyを、そうではないならリダイレクトをって感じで選択なさればよろしいかと思いますがレンタルサーバなどの場合はProxy機能を装備していない場合が殆ど(負荷がかかるのはもちろんの事、乗っ取りや攻撃の踏み台にされる可能性もあるから)です。

http://q.hatena.ne.jp/ダミー

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません