0

私はこのディレクトリ構造を持っています:

|-language-A\
|-language-A\program-A
|-language-A\program-B
|-language-A\program-C
|
|-program-A\

現在program-Aは翻訳されていませんlanguage-Aが、どういうわけかGoogleはこのディレクトリをクロールでき、検索結果に表示されています。ルート内にリダイレクトlanguage-A\program-Aする必要があります...そのディレクトリ内のすべてのフォルダではありません。翻訳の準備ができたらそのルールを削除するので、これは一時的なリダイレクトです。program-Alanguage-A

つまり、基本的には次のようになります。

http://example.com/language-A/program-A/what-ever

に:

http://example.com/program-A/what-ever

4

1 に答える 1

1

質問は実際には多くを語っていないので、すべての文字列が固定されており、渡すパラメーターがないと仮定します。

これを試すことができます:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}   ^/language-A/program-A/?   [NC]
RewriteRule .*    program-A  [R,L]

一時的にリダイレクト

http://example.com/language-A/program-A

に:

http://example.com/program-A

すべてあなたの質問によると:I need to redirect language-A\program-A to program-A in the root...

更新しました

質問の更新によると:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI}   ^/language-A/program-A(.*)?   [NC]
RewriteRule .*    program-A%1  [R,L]

一時的にリダイレクト

http://example.com/language-A/program-A/what-ever

に:

http://example.com/program-A/what-ever

/what-everオプションで、存在する場合は渡されます。

于 2013-01-28T08:53:56.717 に答える