1

私はasp.netを使用しています。ログインページがあります。ログインページでこのコントロールを使用します。

  <asp:HyperLink runat="server" ID="forgotPassword" Text="Forgot Password" 
       NavigateUrl="~/Account/PasswordRecovery.aspx" >Forgot Password</asp:HyperLink>

このリンクをクリックすると、ログイン ページにリダイレクトされます。ブラウザのアドレス バーのアドレスは次のようになります。

/Account/Login.aspx?ReturnUrl=%2fAccount%2fPasswordRecovery.aspx

PasswordRecovery ページには関係ありません。他のページも同様に機能しません。そのページやコード ビハインドに何もない新しい新しいページであっても同様です。

動作する唯一のページは、作成時にプロジェクトに自動的に配置された About.apsx です。

aboutページへのある種のスペースパーミッションを探してみましたが、Web.Configには見つかりません。

助けてください、これは本当に奇妙で説明できません。

4

1 に答える 1

1

ゲストを含むすべてのユーザーにこのページへのアクセスを許可する必要があります。そのための最も簡単な方法は、新しいフォルダ(たとえば、「パブリック」)を作成し、このページまたは同じアクセスが必要な他のページをそこに配置することです。このフォルダーに、次のコードを使用してweb.configを追加します。

<configuration>
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</configuration>

ページの場所を変更したくない場合は、「location」タグを使用できます。

<configuration>
    <system.web>
      <!-- regular configuration -->
    </system.web>
    <location path="Account/PasswordRecovery.aspx">
        <system.web>
            <authorization>
                <allow users="*"/>
            </authorization>
        </system.web>
    </location>
</configuration>
于 2012-08-12T08:02:29.223 に答える