2

最近、自分のサイトの1つのリンク構造を変更したので、301リダイレクトする必要があります。

サブディレクトリがあるすべてのリンクから、サブディレクトリがないバージョンへのリンク(つまり、サブディレクトリが消えるだけ)

例えば

domain.com/fdfddffd/test -> domain.com/test
domain.com/yipeee/test -> domain.com/test
domain.com/fdfddffd/aaa -> domain.com/aaa etc.

だから私は使うことを考えました

RewriteRule  ^([^/]+)(.*)$     / [R]

ただし、2つのディレクトリを除外する必要があります。1つは「検索」、もう1つは「データ」です。上記の書き換えルールと除外を組み合わせるにはどうすればよいですか?

4

1 に答える 1

3

aを使用しRewriteCondて、次のような式でこれら2つを除外します!^/(search|data)/

# Unless the request matches /search/ or /data/
RewriteCond %{REQUEST_URI} !^/(search|data)/
# Rewrite to the contents of the second group (.*)
RewriteRule  ^([^/]+)/(.*)$  /$2 [L,R=301]
于 2012-06-10T19:34:14.693 に答える