サイトの移動、または、ページの移動が発生した場合に、PHPのheader関数を使って旧URLから新URLへリダイレクトさせるのはよく使う方法ですが、改めて使い方を確認します。
例えば新サイト「https://helog.jp/」へリダイレクトさせる場合、私はこれまで以下のように処理を書いていました。
header("Location: https://helog.jp/");
実際アクセスするとリダイレクトされるので、一見、問題ないように思います。
しかし、上記のままでは302リダイレクトとして処理されてしまいます。302は一時的に移動した場合に用いられ、Googleなど検索エンジンは旧サイトのURLを残してしまいます。
301リダイレクトとして恒久的に移動、つまり、検索エンジンなどに新URLをインデックスしてもらうためには、以下のようにします。
header("HTTP/1.1 301 Moved Permanently"); header("Location: https://helog.jp/");
また、header関数では同一の処理を以下のようにして1行で記述することもできるようです。