1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

htaccess 外部転送と内部転送

Posted at

概要

  • 転送処理は、.htaccessという設定ファイルを用いることが多い
  • 配置ディレクトリとその配下にのみ適応される

外部転送

  • アドレスバーのURLを書き換えて、別のディレクトリや別ページ(外部サイト)に転送
  • RewriteRule の設定行末に、[R]フラグを付与する
  • 301にしたい場合は[R=301]、[R] と省略すれば [R=302] と同義になる
  • 上記の [R] フラグを利用するときは、必ず[L] を併記する必要がある

内部転送

  • アドレスバーのURLは書き換えず、内部で表示先を変更する
  • RewriteRule の設定行末に、[L]フラグのみ表記する

HTTPステータスコード

  • 301は恒久
    • 検索エンジンからの総合評価を、元のURLから引き継ぐことができる。
  • 302は一時的
    • メンテナンス時など元のURLに復帰することを前提とする

リダイレクトの書き方例

# 外部転送301リダイレクト
RewriteRule ^2020-4.php$ https://www.www.www/news/2020-5.php [R=301,L]
# 内部転送
RewriteRule ^news([0-9]*).php$ index.php?month=$1 [L]
RewriteRule ^news([0-9]*)-([0-9]*).php$ detail.php?month=$1&id=$2 [L]
  • $1:ひとつ目のカッコの内容
  • $2:ふたつ目のカッコの内容

参考記事

正規表現参考

1
2
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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?