2016-06-24 10 views
1

フォーム認証サイト全体を使用するサイトがあり、一部のページは匿名アクセスで表示することが許可されている例外として含まれています。匿名アクセスでデフォルトのドキュメントindex.aspxを表示したい。 URLにindex.aspxを指定するとアクセス権が与えられますが、ドメイン名のみを入力すると、connectionTest.aspx(サイトのログインページ)にリダイレクトされます。 index.aspxがデフォルトのdocであることを確認しました。ですから、フォーム認証のdomainを宣言していなかったので、あなたの問題が来ているindex.aspxweb.configで既定のドキュメントの匿名アクセスを許可したい

<authentication mode="Forms"> 
    <forms name=".ASPXAUTH" loginUrl="connectionTest.aspx" timeout="30" /> 
</authentication> 
<sessionState mode="InProc" cookieless="false" timeout="30" /> 
<authorization> 
    <deny users="?" /> 
</authorization> 
<location path="~/index.aspx"> 
    <system.web> 
     <authorization> 
     <allow users="*" /> 
     </authorization> 
    </system.web> 
</location> 
<location path="index.aspx"> 
    <system.web> 
     <authorization> 
     <allow users="*" /> 
     </authorization> 
    </system.web> 
</location> 
+0

パスに「〜/」を付けずに試しましたか? – Sefa

+0

はい、私はちょうど簡潔さのためにweb.configのその部分を投稿しませんでしたが、私はそれを投稿に追加しました。それでindex.aspxを指定したurlが動作するのですが、デフォルトのdocとしては動作しません。 – user192632

答えて

0

のための私のWeb configエントリに何か問題があります。あなたがWWWアウトでドメインを設定するとき

<authentication mode="Forms"> 
    <forms name=".ASPXAUTH" domain="demo.com" loginUrl="connectionTest.aspx" timeout="30" /> 
</authentication> 

:認証はクッキーのベースであり、あなたはあなたのようにそれを宣言する必要が前面に出www.とそれにアクセスする必要があるため。そのドメインのすべてのCookieが同じものであることを宣言していない場合、各Cookieはサブドメインに依存していて異なるので、ログアウトします。

同じスタンドとクッキー自体です。

同様の回答:Multiple applications using same login database logging each other out

+0

私はこれを追加しましたが、何もしていないようです。とにかくそれは良いアイデアのように見えるので、私はそれを維持しますが、それは私のエラーではないようです – user192632

関連する問題