質問

Kentico CMS(v5.0)内で301リダイレクトのセットアップにどのようにアプローチしますか?

クライアントに簡単な方法(理想的にはCMSデスクインターフェイスを介して)を提供して、最近ケンティコで再実装されたウェブサイトに301リダイレクトを設定したいと考えています。たとえば、「Old-page.cfm」を「New-Page.aspx」にリダイレクトし、元のリクエストに対するHTTP応答が301であることを確認します。

私はそれが機能するように見えるアプローチを持っていますが、おそらくより良い方法があるかもしれません。 Extensions-Less URLを構成しました(Kenticoごとに ドキュメンテーション)そして、新しいドキュメントエイリアスを「新ページ」ドキュメントに追加し、「古いページ」をURLパスとして指定し、URL拡張機能リストに「.CFM」を追加しました。使用 フィドラー (HTTPデバッグプロキシ)ツール、私が起こりたいことが起こっているように見えます。「Old-Page.CFM」のリクエストは301を返し、「新ページ」ドキュメントにリダイレクトし、200の応答を返します。

これがケンチコで301リダイレクトを設定するための良いアプローチであるかどうかを知っていますか?より良い方法はありますか? Kenticoで拡張レスURLを使用するための既知の欠点はありますか?

役に立ちましたか?

解決

これは良いアプローチだと思いますし、あなたがしていることをせずに301のリダイレクトを達成する他の方法を知らない。私はしばらくの間、ケンチコで拡張レスURLを使用していますが、それらはうまく機能しています。

他のヒント

によると ケンチコのCTOによるブログ投稿(コメント):

... 4.0(4.0のみ)に新しい(これまでの実験的)設定はほとんどありません。Web.configファイルに入れることができます。

彼らです:

3) <add key="CMSUsePermanentRedirect" value="true" /> これにより、302リダイレクトではなく、理にかなっている場所で301リダイレクトが可能になります。

2) <add key="CMSRedirectAliasesToMainURL" value="true" />より良いSEOのために使用できます。ドキュメント(nodealiaspath)のメインではないすべてのURLで301を実行します。それは今のところあなたに役立つはずです。

3) <add key="CMSRedirectInvalidCasePages" value="true" /> これはさらに進み、特定のケースバリアントにのみページを制限できます。ケースが正しくない場合、正しいケースに301になります。

これらのステータスが5.xであるかどうかはわかりませんが、機能するか、サイトマネージャーのどこかに構成設定になっていると推測しています。

IISライターモジュールをインストールします http://www.iis.net/downloads/microsoft/url-rewrite次に、カスタムハンドラーによって処理されるすべての.cfmページにルール(永続= 301)を追加します。

顧客の場合、古いリンクと新しいリンクの関係を保持する2つの列を持つカスタムテーブルを作成する必要があります。

そのカスタムハンドラーは、任意の一致のカスタムテーブルを調べてから、正しいリダイレクトを実行します。

Helicon(http://www.helicontech.com/isapi_rewrite/)からISAPI Rewriteを使用して、PHPシステムからKenticoに移動する複数のクライアントにIIS6に実装しました。サイトのルートにある.htaccessファイルを使用します。必要に応じて、これをケンチコの編集可能なページにすることができます。または、必要に応じてページのカスタムフィールドから更新可能ですが、クライアントからマッピングリストを取得しました。

オプションのプラグインの1つで、IIS7で同じことをネイティブに行うことができると思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top