Help us understand the problem. What is going on with this article?

.htaccessのリダイレクトで、特定ディレクトリ・ページをリダイレクトさせない(除外する)方法

More than 3 years have passed since last update.

.htaccessのリダイレクトで、特定ディレクトリ・ページをリダイレクトさせない(除外する)方法

ディレクトリ/hoge/と画像・CSSを除く,全ページをリダイレクトする。
WordPressなどの管理画面のみリダイレクトしたくない場合におすすめ。
特定のディレクトリ・ページを閲覧可能にするにはCSSや画像やJSをリダイレクトしないことがポイント。CSSと画像とJSをリダイレクト対象から除外している。
リダイレクト先が同じサイト内のページの場合は、そのページも除外すること。(意外と忘れるので注意!)

以下を.htaccessに記述してサイトに設置すると、配下ディレクトリ全てに対して有効になる。
最後の行 R=301は恒久的なサイト移転、 R=302は一時的なサイト移転
UNIX・Linux系のサーバの場合、改行コードをLFとして.htaccessを保存すること

.htaccess
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !(^/hoge/)
RewriteCond %{REQUEST_URI} !\.css$
RewriteCond %{REQUEST_URI} !\.js$
RewriteCond %{REQUEST_URI} !\.jpg$
RewriteCond %{REQUEST_URI} !\.gif$
RewriteCond %{REQUEST_URI} !\.png$
RewriteRule /* http://リダイレクト先 [R=301,L]
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away