始めに
どうも、まんじです。
エックスサーバーで301リダイレクト(一応、Googleから評価を引き継げるはず)する際に5分だけつまったのでやり方を書いておきたいと思います。
ページ単位でリダイレクト
.htaccessに書いたコードです。
RedirectMatch 301 ^/icl/tekioukensa/$ https://manzi.tokyo/icl-test-for-free
RedirectMatch 301 ^/icl/keiyaku/$ https://manzi.tokyo/icl-contract
RedirectMatch 301 ^/icl/shujutu/$ https://manzi.tokyo/icl-operation-review
RedirectMatch 301 ^/icl/tyokugo/$ https://manzi.tokyo/icl-just-after-operation
RedirectMatch 301 ^/icl/1nitigo/$ https://manzi.tokyo/icl-after-one-day
RedirectMatch 301 ^/icl/4nitigo/$ https://manzi.tokyo/icl-after-four-days
RedirectMatch 301 ^/icl/7nitigo/$ https://manzi.tokyo/icl-after-seven-days
RedirectMatch 301 ^/icl/2shuukango/$ https://manzi.tokyo/icl-after-two-weeks
RedirectMatch 301 ^/icl/1kagetugo/$ https://manzi.tokyo/icl-after-one-month
RedirectMatch 301 ^/icl/hantosigo/$ https://manzi.tokyo/icl-after-half-one-year
RedirectMatch 301 ^/icl/md/$ https://manzi.tokyo/icl-merits-and-demerits
すっごいざっくりと解説すると、^/icl/md$がリダイレクトされるパスで、https://manzi.tokyo/<なんか>、がリダイレクトされた先のパス。
もう少し詳しく解説です。
- ^/icl/md/$
- リダイレクトしたいURLというかパス
- manzi.tokyo/warota 、だったら、manzi.tokyoドメインの.htaccessで、^/warota$になる
- ^$は、正規表現とかいう文字のマッチを書ける…コード…?ではなくて、文法
- ちなみに
- https://manzi.tokyo/icl-merits-and-demerits
.htaccessがこんな感じになる。
昔やってたアフィカスサイトもリダイレクトかけてたんだけど、余裕でミスってました。
^/icl/md$じゃなくて/icl/mdみたくなってて、^$←こいつらがいないと完全一致にならなくて意図したリダイレクトができないから注意が必要です。
ミスってる具体例だとこう。
RedirectMatch 301 /icl https://manzi.tokyo/icl
これだと、多分/iclから始まる全部がリダイレクトされちゃうのと、リダイレクト先のパスもなんか違う感じになる。(なんでなのかは調べてないから分からない。)
エックスサーバーのやつを丁寧に書く
あとは動作確認して、ちゃんと意図した通りに動いていれば勝利!
まとめ
リダイレクト元のパスをちゃんと正規表現で囲ってやるのが大事だったみたいです。
あと余談なんですが、ぼくの場合は301リダイレクトをしてもSEOの評価(検索順位)に影響はほぼ受けませんでした。
検索順位の評価を完全に引き継げるかどうかは運もあると思いますが、今のところは一応全部うまく引き継げています。