質問

<のhref = "に続くもう一つの問題https://stackoverflow.com/questions/1776942/trouble-redirecting-all-pages-in-a-folder-to-a-page-at-root-level 「タイトル=」トラブルルートレベル ">このスレッドのあるページにフォルダ内のすべてのページをリダイレクトします。私は解決できないということだけで、残りの項目は現在、存在しないフォルダのリスト「/チームは、/」があるということですが、私は私の.htaccessファイルにこれを追加する場合、それは内のファイルの他のすべての.htaccessエントリを破りますそのフォルダ、つまり

redirect 301 /team/ /team.html
redirect 301 /team/joe_bloggs.htm /team.html
redirect 301 /team/joe_bloggs.html /team.html
redirect 301 /team/bill_smith.htm /team.html
redirect 301 /team/bill_smith.html /team.html
私はその後、/team/joe_bloggs.htmを訪問しようとすると、

は、

に私を取ります
/team.html/joe_bloggs.htm

私はこの問題を解決することができた場合、それは私が私の元の質問を解決し、すべてのヘルプは感謝して受け取ったので、私の.htaccessファイルにリダイレクトページの膨大なリストを削減する方法を理解するのに役立つことがあります。

役に立ちましたか?

解決

あなたは順序を変更し、最後に「redirect 301 /team/ /team.html」を配置する必要があります。 それはラインにラインを読み、それが何かのフィットを見つけた場合、それを置き換えます。

また、私はあなたが、追加^と$文字することを学ぶ必要があると思います。 ^手段は、式が開始すべきである、と$は、式が終わるべきであることを意味します。 だから、^/team/$手段が、それは正確に/チームでなければなりません/それは/team/joe_bloggs.htm

一致文句を言いません

他のヒント

パス接頭辞の

Redirectディレクティブの作品。そして、この場合には、あなたの最初のディレクティブ(/team/)マッチとパスの残りの部分で使用されるパス接頭辞は、新しいURLパスに追加されます。

  

[...] URL-Path ので始まるすべての要求は、URL のターゲットの場所でクライアントにリダイレクト要求を返します。一致URL-Path の以外の追加のパス情報は、URL の対象に追加されます。

試してみてください RedirectMatch の代わります:

RedirectMatch 301 ^/team/ /team.html
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top