2 Stimmen

Login.aspx will immer meine Startseite sein!

Gerade anfangen in asp.net. Habe gerade eine login.aspx Seite in meiner Website erstellt und klebte auf ein asp Login-Steuerelement - das ist alles, was ich tat. Jetzt meine Welcome.aspx Seite wird nicht angezeigt, wie die Startseite meiner Website, wenn ich debuggen - obwohl es als diese festgelegt ist. Außerdem habe ich sogar meine web.config bearbeitet - (siehe unten) - und es tut immer noch das Gleiche. Wie schaffe ich es, dass meine Welcome.aspx-Seite als Standardstartseite angezeigt wird?

<authentication mode="Forms">
      <forms defaultUrl="~/Welcome.aspx" loginUrl="~/login.aspx" timeout="1440" ></forms>
</authentication>

3voto

Stephen Wrighton Punkte 34868

Das liegt daran, dass Sie mit einem nicht authentifizierten Benutzer auf die Website zugreifen - das Framework leitet Sie also auf die Loginurl um.

3voto

stephenbayer Punkte 12054

Wenn Sie möchten, dass Benutzer auf welcome.aspx zugreifen können, ohne authentifiziert zu sein, legen Sie welcome.aspx in einem separaten Ordner ab und richten Sie eine neue web.config in diesem Unterordner ein. Füllen Sie den Autorisierungsabschnitt in dieser web.config aus, damit die Dateien in diesem Ordner und den Unterordnern für anonyme Benutzer zugänglich sind:

<authorization><allow users="?" /></authorization>

2voto

Mitchel Sellers Punkte 60318

Es gibt zwei mögliche Ursachen für Ihr Problem.

1.) Der Benutzer ist nicht authentifiziert, daher muss er sich erst anmelden. In diesem Fall wird der Benutzer zu login.aspx weitergeleitet, und es gibt einen returnurl-Parameter, der ihn nach der Anmeldung zur Willkommensseite zurückbringt.

2.) Sie sehen die Seite login.aspx, wenn Sie auf "debug" klicken, um Visual Studio zu starten, was normalerweise die aktuell sichtbare Seite startet, wenn es eine aspx-Seite ist.

Um Punkt 1 zu umgehen, wenn Sie NICHT wollen, dass ein Benutzer angemeldet sein muss, um die Seite welcome.aspx anzuzeigen, können Sie Ihre Authentifizierungseinstellungen in der web.config ändern.

1voto

Danimal Punkte 7510

Sie haben die Anmelde-URL in der web.config festgelegt. Sie werden auf die Seite welcome.aspx weitergeleitet, die jedoch erkennt, dass Sie nicht angemeldet sind, und Sie zurück zur Login-Seite weiterleitet. Wenn Ihre Anmeldeseite ein Kontrollkästchen "Remember me" hat, versuchen Sie, dieses zu deaktivieren und sich anzumelden - bei den folgenden Durchläufen sollten Sie direkt zur welcome.aspx gelangen.

0voto

Guy Starbuck Punkte 21075

Nun, wenn der Benutzer nicht authentifiziert ist, wird er automatisch auf die "loginUrl" umgeleitet - sobald Sie sich anmelden, sollten Sie auf Welcome.aspx umgeleitet werden, und es wird die Standardseite sein, solange die Anmeldeinformationen gültig sind.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X