「WordPressで2つ目のサイトを作ったので、最初に作ったブログから記事を移動させてたい」
こんなふうに思っている人はいませんか?
当記事では、プラグインを利用せず、htdocsを編集して301リダイレクトをする方法を紹介いたします。
htdocsで301リダイレクトする方法
結論から言うと、下記のコードをhtdocsに記述することで301リダイレクトをすることができます。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^移動元のパーマリンク/$ https://〇〇.com/〇〇/ [R=301,L]
</IfModule>
しかし、そのままコピペしただけではもちろん301リダイレクトはできません。ご自身でリダイレクトする前のURLと、リダイレクト先のURLを書き換える必要がありますので、どのように変更したらいいのか説明していきますね。
まず、変更する箇所は、以下のコードの赤い部分です。
RewriteRule ^移動元のパーマリンク/$ https://〇〇.com/〇〇/ [R=301,L]
まず、移動元のパーマリンク/の部分を変更しましょう。例えば、移動元の記事のURLが「https://〇〇.com/web/」だとしたら、web/ に変更します。httpsとかは省いて大丈夫です。
なぜ、大丈夫かというと、この三角マーク(^)がhttps://〇〇.com/の役割を果たしているからです。
変更後はこんな感じです。
RewriteRule ^web/$ https://ugokawa.com/github-css/ [R=301,L]
次に、移動先の記事のURLを変更していきます。
シンプルですね、リダイレクトさせたい(移動先)記事のURLをコピペすればOKです。
例えば、https://ugokawa.com/redirect/ としてあげるだけですね。
変更後はこんな感じです。
RewriteRule ^web/$ https://ugokawa.com/redirect/ [R=301,L]
さて、最後はこれをhtdocsに記述します。
注意点ですが、#BEGIN WordPress という記述より前(上)に、リダイレクトのためのコードを書いてください。
これで301リダイレクトが完了しました。
このあとは、記号の意味を説明しますね。
もう301リダイレクトができたから大丈夫という方は、ここまでで大丈夫です。お疲れ様でした。
記号の説明
「$」はただの区切りです。ですがこれがないと正常にリダイレクトができなくなるので忘れないようにしましょう。
[R=301,L]のR=301はリダイレクトの種類を表していいます。今回は301リダイレクトがしたいので、301と指定しています。
[R=301,L]のLの部分は「LAST」の省略形です。つまり、この記述はここで終わりという意味を表しており、これ以降になにか処理をするコードを書いたとしても、この行では処理されません。次の行のコードは処理はされます。
コメント