2017-07-03 7 views
0

これは重複している可能性がありますが、私の回答がそれらのポータルから私のために働いていないため、再度質問を投稿しています。wwwの有無にかかわらずドメインにセッションが保存されないASP.NET

URLに2つの異なるドメイン名を付けて、このウェブサイト内のセッションデータをテストしようとしています。

私は簡単な説明のためにスクリーンショットを添付しています。 enter image description here

URL ssfound.comにログインすると、セッションが保存され、ログインの詳細が表示されます。

www.ssfound.comを開くと、セッションはhteseのログインの詳細を取得できません。

インターネットで検索したところ、解決策はほとんど見つかりませんでしたが、いずれも機能していませんでした。 私は、configファイルにそれを追加した後にテストしたが、以下、私も<sessionstate cookieless="true"/>とモード=インプロセスを試してみました

<httpCookies domain=".ssfound.com"/> 

<httpCookies domain="ssfound.com"/> 

動作しますが、どちらもこれらの作品はありません。

私は上記のsolutionsをスタックオーバーフローコミュニティ&から試してみましたので、重複してマークしないでください。

+0

cookielessセッションを使用しないでください。 – mason

+0

はいmason、cookielessを追加すると、実際にファイルをアップロードする際に別の問題が発生しました。 – ashveli

答えて

1

あなたのサイトssfound.comとwww.ssfound.comは、httpとhttpsに似た2つの異なるサイトとみなされます。

ご希望のURLにユーザーをリダイレクト常に非WWWまたはWWWとの間で選択して、これはまたなど、SEO、分析、インバウンドリンクの面でお手伝いを

あなたはグローバルファイル(C#のコードの下に使用することができます

)wwwサイト以外のユーザーをwwwサイトに変換します。

protected void Application_BeginRequest (object sender, EventArgs e) 
{ 
    if (!Request.Url.Host.StartsWith ("www") && !Request.Url.IsLoopback) 
    { 
     UriBuilder builder = new UriBuilder (Request.Url); 
     builder.Host = "www." + Request.Url.Host; 
     Response.StatusCode = 301; 
     Response.AddHeader ("Location", builder.ToString()); 
     Response.End(); 
    } 
} 
+0

ソリューションをありがとう、これは動作しています。しかし、これが既存の機能に影響を及ぼしているかどうかを確認する必要があります。 – ashveli

関連する問題