URLを変更したときのリダイレクト文(.htaccess)の書き方
公開:
記事を公開したあとにファイル名を変えたときは、.htaccessにURL転送のための記述を書いておきましょう。そうすることで変更前のURLにきたアクセスを変更後の新しいURLへ自動転送させることができます。
†††
先日、「「CSSでテキストにノート風の罫線を付与する方法」の実施」という記事を公開したのですが、その時はいいファイル名を思いつかずとりあえずCSSのプロパティをファイル名にして「css-linear-gradient.html」にしました。しかし、あとで考えると「css-notebook.html」でよかったなと思い直したのです。こっちのほうが断然わかりやすい。
ファイル名を変更するとURLも変わってしまうので、公開時のURL(古いファイル名)でのアクセスでは見つからないファイルになってしまいます。
新旧のファイル名でも記事を残しておくこともできますが、記事内容を更新することになったときに面倒ですし、同じ内容を二つのURLで公開することは、Googleからスパム認定されてサイト評価が下がるキケンもあります。こういうときに使える手段が「リダイレクト」というURLを転送させる手段です。
リダイレクト文の書き方
旧URLを新URLに転送するには、ドメイン直下に「.htaccess」というファイル名のテキスト書類を作り、そこにリダイレクトを指示する記述をしておきます。書き方はとてもかんたんで次の一文で済みます。
Redirect permanent [旧・転送元URL] [新・転送先URL]
URLの書き方は、転送元はドメインを除いた「/」から始まるURL、転送先となる新URLはプロトコル(https:// や http://)からのURLにします。
同じサイト内のURL変更でも同じように書くことができます。当サイト記事の旧URL「css-linear-gradient.html」を新URL「css-notebook.html」へリダイレクトするには、次の記述になります。
Redirect permanent /css-linear-gradient.html https://xcs.taken.jp/css-notebook.html
なお、当サイトでは記事ファイルがドメイン直下にあるためシンプルなURLになっていますが、転送元URLにディレクトリが含まれている場合は https://example.com/dir1/dir2/123.html なら、/dir1/dir2/123.html となります。ドメイン名の次にある「/」から書き始めるのがルールです。
サイト内URL変更の手順は、旧ファイル名を新ファイル名に変更して再アップロード(WordPressはURLスラッグ変更のみ)してから、.htaccess ファイルを作成しましょう。新しいファイル名のデータを先に準備しておかないと .htaccess ファイルができるまで「Not Found」になってしまいます!
コアサーバーでの手順
一般的には、.htaccess ファイルをテキストエディタで作成してから、FTPソフトでアップロードします。
しかし、コアサーバーでは「ファイルマネージャー」というテキストエディタ付きのFTP機能があるので、FTPソフトを使い慣れていない方や、サーバーに接続するための設定が面倒という場合にはファイルマネージャーがおすすめです。
コアサーバーにログインして、 サイト設定 > 該当ドメイン > ファイルマネージャー へ入ります
ファイルマネージャー画面に入ると、該当ドメインの構成ファイルを見ることができます。ファイル名のリストになっているので、編集したいファイルの左端のチェックボタンを選んでからファイルの編集画面に入ります。
.htaccess ファイルが存在しない場合は「ファイル作成」をクリックして「.htaccess」というファイルを作りましょう。
.htaccess ファイルができたら(元からある場合も)、ファイルを選択して「編集」をクリックしてエディタ画面へ進みます。
ファイルの中身を編集できるエディタ画面はシンプルな作りになっています。初めから.htaccessファイルがあるときは、なんらかの記述があるはずなので、その記述を消さないようにして、リダイレクト文を追加します。直接書きこんでもコピペでも構いません。
リダイレクト文が書けたら、上部にある「フロッピーアイコン(青い四角形のアイコン)」をクリックするとファイルが保存されます。その次に「←(矢印アイコン)」をクリックすると、元のページに戻ります。
最初のページに戻り、画面右上隅のアイコンをクリックしてファイルマネージャーを終了させましょう。
以上で、リダイレクトの設定は完了です。
最後に、旧URLにアクセスして、新しいURLに転送されるか確認しておきます。正しく転送されないときは何かが間違っているので、リダイレクト文の書き方やファイルがドメイン直下に配置されているかなどを再確認しましょう。