2016-09-13 20 views
1

Sitecore 7用の301リダイレクトモジュールを使用すると、Sitecoreリダイレクトモジュールで使用する適切な要求式およびソース値を設定する際に問題が発生します。私は、典型的には私がサイトのホームページにリダイレクトしたいという要望を得ているサンプルURLを持っています。 Sitecoreリダイレクトモジュール正規表現パターンマッチング

すべてはURLの末尾にexcite.comが含まれている例のURL要求

https://www.example.com/products/foods/apples/excite.com 
https://www.example.com/products/foods/oranges/excite.com 
https://www.example.com/products/foods/pears/excite.com 

私はホーム・ページにリダイレクトされるように末尾にexcite.comが含まれているこれらの要求をしたいと思います(https://www.example.com)しかし私は私の人生のためにこれを理解することはできません。

+0

を一致させたい場合は

<rules> <rule name="Redirect excite.com" stopProcessing="true"> <match url=".*(/excite.com)$" /> <action type="Redirect" url="https://{HTTP_HOST}" appendQueryString="false" /> </rule> </rules> 

変更?市場にはいくつかのものがあり、それらはすべてわずかに異なって動作します。 – jammykam

+0

私は301のリダイレクトモジュールを使用しています – tonyrocks

答えて

3

私は301 Redirect Moduleを使用していませんが、同様のモジュールを使用しています。解決が必要な2つの問題があります。

パターンマッチリダイレクトを使用してリダイレクトを作成する必要があります。あなたが必要とする正規表現が

.*(/excite.com)$

/excite.comで終わるすべての要求に合致」された他の問題は、サイトコアの拡張機能として、URLの.com一部を見て、その要求をフィルタリングしているということです。許可された内線番号のリストにcomを追加する必要があります。

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> 
    <sitecore> 
     <preprocessRequest> 
     <processor type="Sitecore.Pipelines.PreprocessRequest.FilterUrlExtensions, Sitecore.Kernel"> 
      <param desc="Allowed extensions (comma separated)">aspx, ashx, asmx, com</param> 
     </processor> 
     </preprocessRequest>  
    </pipelines>  
    </sitecore> 
</configuration> 

あなたはIISの書き換えモジュールを使用している場合、あなたはちょうどあなたも、サイトコアのパイプラインをヒットする前に解決し、リダイレクトしてしまいますこれはそこにルールを追加することができますので、あなたが心配する必要はありません、と述べているすべての許可された拡張フィルタ。 (excite.com)$|.*(/excite.com)$への正規表現は、あなたも、それはあなたが使用しているモジュールをリダイレクトhttp://ww.example.com/excite.com

+0

これは完璧に機能しました! 1)パターン(301リダイレクトモジュールを^ https://www.example.com/products/foods/(。+)/(。+)/(。+).com $として調整する必要がありました。 )許可された拡張子としてcomを追加する。 – tonyrocks

関連する問題