元のURLを取得し、クエリ文字列パラメータを切り捨てて、URLのクリーンアップ版を返したいと思います。私はそれがアプリケーション全体で起こるようにしたいので、global.asaxを通して実行することが理想的です。また、301リダイレクトも順調に進んでいると思います。クエリ文字列を切り捨ててクリーンURLを返すC#ASP.net
ie。中
:www.website.com/default.aspx?utm_source=twitter & utm_medium =ソーシャル・メディア
アウト:www.website.com/default.aspx
最良の方法は何だろうこれを達成するには?
完璧!ありがとうございます。 – Chris
これは私たちが最後に思いついたものです: //フォーマットが貧弱です。 文字列rawUrl = String.Concat(this.GetApplicationUrl()、Request.RawUrl); if(rawUrl.Contains( "/ post /")) { bool hasQueryStrings = Request.QueryString.Keys.Count> 1; if(hasQueryStrings) { Uri uri = new Uri(rawUrl); rawUrl = uri.GetLeftPart(UriPartial.Path); HtmlLink canonical = new HtmlLink(); canonical.Href = rawUrl; canonical.Attributes ["rel"] = "canonical"; Page.Header.Controls.Add(標準); } } アプリケーションURLを正しく取得する関数が続きます。 完全に動作します。 – Chris
eek、それを修正する方法がわからない:(笑 – Chris