2011/09/22

リダイレクト on S3

www.popowa.comのコンテンツ(Wordpress)をblog.popowa.com(BlogSpot)に移行して、www.popowa.comはS3のウェブホストに置いたのですが、www.popowa.comには、はてぶとかから来る人も多くリンク切れになるのは困るなーと思い、以下のように設定してみました。
※前提として旧www.popowa.comは新stock.popowa.comとして残しています。

まずS3の静的ページのホスティングは動的なページを置く事は出来ません。なので、.htaccessを使ってmod_rewriteでURLを書き換える事が出来ません。

S3にはエラーページを設定出来る所があり、

404.htmlに以下のコードを入れると旧www.popowa.com/archives/xxxxに来た人は新stock.popowa.com/archives/xxxxに転送されます。

        <script type="text/javascript" language="javascript">
        <!--
        var url=document.URL;
        if (url.match(/archives/i)) {
            id = url.match(/\d+/g);
            setTimeout("link()", 0);
            function link(){
                location.href='http://stock.popowa.com/archives/'+id[0];
            }
        }
        // -->
        </script>


本当はこちらのブログに飛ばせればいいのですが、urlが読めないので、とりあえず今回はこうしてみました。

簡単ですね!