現在複数ドメインでWEBサイトを運営しております。

hogehoge.jp
hoge-hoge.jp
hogehoge.com
などです。

コンテンツは全く一緒で、エイリアス機能を使って同じコンテンツを表示させております(サーバーはさくらサーバーです)。
したがって、3つのドメインが全て同一フォルダを参照している状態です。
これをどのドメインにアクセスしてもhogehoge.jpにしたいと思っております。

例)
http://www.apple.co.jp/ipodtouch/itunes.html(アクセスすると下のurlにリダイレクト)
http://www.apple.com/jp/ipodtouch/itunes.html

htaccessに301でいちいち1ページ毎に記述せず、リダイレクトする方法はございますでしょうか。
上記のアップルのサイトが理想です。

以上、よろしくお願いいたします。



回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2008/10/30 13:36:24
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:tdoi No.2

回答回数174ベストアンサー獲得回数75

ポイント20pt

mod_rewriteを使うのがよいのではないでしょうか?

hoge-hoge.jpのドキュメントルートの.htaccessに次のように書いておくと、

RewriteEngine on
RewriteRule ^(.*)$ http://hogehoge.jp/$1 [R=301,L] 

http://hoge-hoge.jp/foo/bar.htmlhttp://hogehoge.jp/foo/bar.html に301(Moved Permanently)でリダイレクトされます。

SEO的なことを言うと細かいことは、判断しかねるので、詳しくはmod_rewriteのマニュアルなどを参考にしてください。

公式のドキュメント(英語)

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html

日本語では、以下のサイトがGoogleでトップに来ますが、一通り分かるのではないでしょうか?

http://tech.bayashi.net/svr/doc/apache/mod_rewrite.html

何かの参考になれば。

id:sumithsonian

回答ありがとうございます。

上記試してみたのですが、転送がループしてしまいます。

転送前と転送後のフォルダが同じ為です。

転送前と転送後では、フォルダは分けるしか無いのでしょうか。

その後、フォルダを分けてみたところ、理想の形にすることが出来ました。

ありがとうございました。

2008/10/30 13:33:19

その他の回答4件)

id:yasu_sinjuku No.1

回答回数71ベストアンサー獲得回数10

ポイント20pt

.htaccessでパターンマッチによるリダイレクトをすれば出来ます。


しかし、別ドメインで同一のコンテンツを公開するのはSEO的に得策ではありません。

数年前でしたら、有効な手法だったんですが、現在では、フィッシングサイトの検出など、重複コンテンツは、すぐに発見されます。

そして、発見されると、最有効なドメイン以外は、インデックスされなかったり、全てのドメインが一定のマイナス評価を受けるようなフィルタリング機能が搭載されているようです。

id:sumithsonian

回答ありがとうございます。

>.htaccessでパターンマッチによるリダイレクトをすれば出来ます。

→パターンマッチングについて参考サイトなどありますでしょうか。

>しかし、別ドメインで同一のコンテンツを公開するのはSEO的に得策ではありません。

→実はそれを懸念して、リダイレクトをかけて、一つのドメインにしたいと思っている次第です。

ドメイン取得の都合上、本当に欲しかったドメインが後になってとれたのです。

それまでに取っていたドメインが既にインデックスされてしまいました。

今回は、そのドメインを一つにしたいと思い、方法を探しておりました。

2008/10/30 02:46:00
id:tdoi No.2

回答回数174ベストアンサー獲得回数75ここでベストアンサー

ポイント20pt

mod_rewriteを使うのがよいのではないでしょうか?

hoge-hoge.jpのドキュメントルートの.htaccessに次のように書いておくと、

RewriteEngine on
RewriteRule ^(.*)$ http://hogehoge.jp/$1 [R=301,L] 

http://hoge-hoge.jp/foo/bar.htmlhttp://hogehoge.jp/foo/bar.html に301(Moved Permanently)でリダイレクトされます。

SEO的なことを言うと細かいことは、判断しかねるので、詳しくはmod_rewriteのマニュアルなどを参考にしてください。

公式のドキュメント(英語)

http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html

日本語では、以下のサイトがGoogleでトップに来ますが、一通り分かるのではないでしょうか?

http://tech.bayashi.net/svr/doc/apache/mod_rewrite.html

何かの参考になれば。

id:sumithsonian

回答ありがとうございます。

上記試してみたのですが、転送がループしてしまいます。

転送前と転送後のフォルダが同じ為です。

転送前と転送後では、フォルダは分けるしか無いのでしょうか。

その後、フォルダを分けてみたところ、理想の形にすることが出来ました。

ありがとうございました。

2008/10/30 13:33:19
id:yasu_sinjuku No.3

回答回数71ベストアンサー獲得回数10

ポイント20pt

ここのサイトで解説されてます。

SEOに関しても正しい認識です。

http://w3g.jp/others/htaccess/redirect

id:sumithsonian

ありがとうございます。参考にさせていただきます。

2008/10/30 13:22:35
id:denden-cafe No.4

回答回数10ベストアンサー獲得回数1

ポイント20pt

元々、同じフォルダを参照しているドメインの統一とのことですので、

Redirect permanent(Redirect 301)で転送するとよいでしょう。

Redirect permanent / http://www.example.com/

参考:

http://httpd.apache.org/docs/2.2/ja/mod/mod_alias.html#redirect

http://www.kanaya440.com/contents/tips/html/005.html

ご利用のサーバでmod_rewriteが有効になっていれば、

RewriteEngine On

RewriteRule (.*) http://www.example.com/$1 [R=301]

のようにRewriteRuleで転送することもできますが、

ご質問のように同じ階層構造のサイト同士ならRedirect permanentで十分だと思います。

サーバの設定によってうまく動作しない場合がありますので、

実際のサイトに転送をかけるまえに、テスト用のディレクトリにダミーのファイルを置いて

転送できるかどうか試してみた方がいいかもしれません。

また、設定した後に次のようなサイトを利用して、本当にステータス301で転送されているかどうかを

確認した方がいいと思います。

302とかになっているとペナルティを喰らう可能性がありますので。。。

http://web-sniffer.net/

id:sumithsonian

http://web-sniffer.net/

→こちらで調べたところ、301になりました。

ありがとうございます。

2008/10/30 13:35:15
id:pahoo No.5

回答回数5960ベストアンサー獲得回数633

ポイント20pt

hoge-hoge.jp, hogehoge.com のルートが割り当てられているパスに、以下の .htaccess を設置してください。

Redirect permanent ルートパス名 http://hogehoge.jp/

これで、hogehoge.jp へ 301 ジャンプします。


参考サイト

id:sumithsonian

参考になりました。

ありがとうございます。

2008/10/30 13:35:44

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

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

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

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

回答リクエストを送信したユーザーはいません