LoginSignup
0
0

More than 1 year has passed since last update.

サーバー移行| リダイレクト| .htaccess

Last updated at Posted at 2022-08-09

.htaccessとは

役割:ウェブサーバの設定ファイル

詳細:htaccess ファイルの命令文にしたがってサーバが処理してくれる
読み方:どっとえいちてぃーあくせす

ルール

  • ファイル名は".htaccess"
  • 文字コードはUTF-8(BOM無し)
  • 改行コードはLF
  • ファイルの最終行に空行を入れる
  • httpd.conf で許可されている命令のみ指定可能
  • 有効範囲は配置したディレクトリ以下

オンラインツール

生成ツール

チェックツール

リダイレクトとは

ページに訪れたユーザーを別のページに転送すること

リダイレクトの必要性

  • 訪問ユーザー対策:サイトリニューアルやサイト移転の際、ユーザーに新しいURLを自動的に案内する
  • 検索エンジン(Google)対策:古いURLに対する検索エンジンの評価を、新しいURLに引き継ぐ

リダイレクト設定の書き方

ドメイン移転 (301リダイレクト)

#RewriteEngine を起動(コメントアウト)
RewriteEngine On
RewriteCond %{http_host} ^www.old.com
RewriteRule ^(.*) https://www.new.com/$1 [R=301,L]

または

Redirect permanent / https://www.new.com/

※注意※
階層を保持しつつリダイレクトされるため、特定のページのみを違う場所へ転送させたい場合には、最初に書いておく

ページのURL変更1

RewriteEngine on
RewriteRule ^old.html$ /new.html [R=301,L]

^ は正規表現の先頭を表す

ページのURL変更2

RewriteEngine on
RewriteRule https://www.old.com/old.html https://www.new.com/new.html [R=301,L]

または

Redirect permanent /old.html https://www.new.com/new.html`

ディレクトリの変更

RewriteEngine on
RewriteRule ^old(.*)$ /new$1 [R=301,L]

モジュール

mod_rewrite

要求された URL をオンザフライで書き換える

ディレクティブ 処理 備考
RewriteEngine 処理の制御
RewriteBase リダイレクト先のベースディレクトリ指定 ※.htaccess が置かれたディレクトリから相対パス
RewriteRule 書き換え [R=301] =レスポンスコードを301に指定、 [L]=(last)URLの書き換え処理終了
RewriteCond 条件定義 RewriteRule ディレクティブの前に設置
RewriteOptions オプションを設定 ディレクティブORサーバ単位

mod_alias

サーバにリクエストが到着したときに URL の操作や制御をする

ディレクティブ 処理 備考
Redirect リダイレクト リダイレクト元の URL は、/ で、リダイレクト先の URL は絶対 URL で始める。※permanent=恒久的にリダイレクト
RedirectMatch 正規表現を用いたリダイレクト

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0