アプリ版:「スタンプのみでお礼する」機能のリリースについて

Greasemonkeyを使い、

var url = location.href;
url = url.replace( 'http://domainOLD' , 'http://domainNEW' );
location.replace(url);

として使っています。
ミラーサイトが時々Googleでヒットし困るため新しい方のドメインにジャンプするようにしています。
ただ、どうも、古い方のページに飛んだ時、すべてのHTMLを呼んで後でジャンプしているようで動作が非常に遅く困っています。
もっと素早くジャンプすることはできないものでしょうか?

A 回答 (4件)

No.2です。


google検索の結果に特化してよいなら、検索結果のページにおいて
古いドメインのリンク先を新しいリンク先に変えてしまうとか
いち例ですが、
モンキーの対象ページ
http://www.google.co.jp/search?*
ユーザースクリプト
var res=document.getElementById("res");
var link=res.getElementsByTagName("A");
alert(link.length);
for (var i=0;i<link.length;i++){
if(link[i].getAttribute("href")=="http://domainOLD"){
link[i].setAttribute("href","http://domainNEW")
}
}

※正規表現を使って、もっときめ細かく、置換したい部分だけ
変えた方がいいんですが、正規表現苦手なもので....
    • good
    • 0
この回答へのお礼

回答いただきありがとうございます。
とても助かりました!

お礼日時:2009/12/03 14:41

No2です。

失礼しました。私の質問文の解釈ミスでした。
自分のサイトを引っ越したのじゃなくて、
FirefoxであるURLを見る時、そのURLだけ新しい方のURLにリダイレクト
したいという事かなあ~(この解釈もまちがっていそう)
にしては、
「ミラーサイトが時々Googleでヒットし困る」の意味がよくわからん
    • good
    • 0

メタタグ利用はどうですか?


古い方のページのヘッダーに
<META HTTP-EQUIV="Refresh" CONTENT="1; URL=http://domainNEW" />
としてやれば、1秒後にhttp://domainNEWに異動する。

この回答への補足

回答いただきありがとうございます。
質問の仕方か、カテゴリが不適切だったかもしれませんが、
このjavascriptはブラウザの拡張機能で動作させています。
そのため、たぶん、メタタグでは無理だと思います。
もし、Greasemonkeyのことでいっておられましたら、
当方の勉強不足ですので、
スクリプト中にどのように記述すればよいかわかりますでしょうか?
お手数ですが、宜しくお願い致します。

補足日時:2009/12/02 18:59
    • good
    • 0

それってjavascriptでやることではないのでは?


旧サーバーの稼働状況にもよりますが.htaccessなどが
生きているならサーバーサイドで無条件にリダイレクトしてください
    • good
    • 0
この回答へのお礼

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

説明不足ですみません。 あるサイトを、Googleで検索すると、
domainOLD/page1.html
がヒットします。ただ、このサイトは、最近、
domainNEW/page1.html
という新しいドメインでサイトを作成しており、新しいドメインの方が現在は稼働しています。
古いサイトもヒットするため毎回、新しいサイトへ手動で飛ぶ必要があり、不便を感じます。
そこで、Firefoxで見る時、Greasemonkeyのスクリプトで、上記コードを実行して、常に新しいサイトへジャンプしているのですが、古いサイトのページをすべて読み込んだ後ジャンプするため改良できない物かと思っています。
なお、私はホームページの管理者とは一切無関係ですのでサーバサイドでの制御はできません。

お礼日時:2009/12/02 16:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!