下記3つのフォルダ配下"以外"へのアクセスすべてを、
別のドメインの対応するフォルダやファイルに転送するには、
どうしたらいいでしょうか?
◆例→
<転送したくないフォルダ>
http://example.com/hello/a/
http://example.com/hello/b/
http://example.com/goto/
<転送先>
http://www.yahoo.co.jp/
http://example.com/thankyou.html は
http://www.yahoo.co.jp/thankyou.html に転送される。他も同様。
ただし、
http://example.com/hello/b/thankyou.html は転送しない。
http://example.com/のルートに設置する.htaccessに次のように記述します。
RewriteRule ^/?$ http://www.yahoo.co.jp/ [R=301,L] # 条件に除外フォルダを指定します。 RewriteCond $1 !^(hello/a|hello/b|goto) RewriteRule ^(.+)$ http://www.yahoo.co.jp/$1 [R=301,L]
次のように除外フォルダを%{REQUEST_URI}を利用して指定する事もできます。
RewriteRule ^/?$ http://www.yahoo.co.jp/ [R=301,L] RewriteCond %{REQUEST_URI} !/?(hello/a|hello/b|goto)/? RewriteRule ^(.+)$ http://www.yahoo.co.jp/$1 [R=301,L]
※.htaccessではなく、httpd.confで設定する事もできます。
ようやく試せましたがバッチリでした。ありがとうございます。
2012/07/05 22:58:07