mod_aliasとフォルダのリダイレクトに関する問題
-
21-09-2019 - |
質問
<の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