0

GoDaddyでホストされているWebサイトがあります。URLはwww.boatronix.comです。ファイルはフォルダ「/boatronix」にあり、フォルダは「/_sites」にあります。SiteNav.ascx(ルートディレクトリの下の「Controls」フォルダにあります)を含むマスターページがあり、すべて「../sales.aspx」または「../operations.aspx」のURLを持つページリンクがあります。 " 等々。すべて同じルートディレクトリにあるページの1つに移動すると、「boatronix.com/sales.aspx」の上にアドレスバーが表示されたページが表示されます。

また、マスターページにASP.netメンバーシップのログインコントロールがあり、ナビゲーションリンクの1つが制限されたページを指しています。いずれかのルートからlogin.aspxにリダイレクトされると(制限されたページを要求するか、loginStatusコントロールの[login]ボタンをクリックする)、login.aspxに移動しますが、その上のアドレスバーに「boatronix」が追加されます。 com / _sites / boatronix/login.aspx。」

問題:これは望ましくない結果です。クエリ文字列のreturnUrlに続いて、後続のすべてのページリクエストが「boatronix.com/_sites/boatronix/page.aspx」として検索され、ナビゲーションリンクがすべて壊れているためです。

私の質問:ログインコントロールの「doPostBack」機能のスクリプトが原因ですか?これは、GoDaddyの技術ラインが問題だと言っていることです。または、IIS、コード、またはweb.configでこれを修正する必要がありますか?(たとえば、仮想ディレクトリルールの設定)

サイト「www.boatronix.com」にアクセスして右上の「ログイン」リンクをクリックすると、ページリクエストが「/boatronix」から「_sites」までの1つのディレクトリをトレースしているように見えるため、何が起こるかがわかります。そしてそこから先に進みます-私はそれがそれをするのを止めてルートディレクトリにとどまろうとしています。

見て、どんな提案にも大いに感謝します。

4

1 に答える 1

2

サイトの構造を完全に確認せずに問題を特定するのは非常に困難ですが、Web.Config でログイン ページの URL を調整する必要があるようです。

保護されたページにアクセスすると、ASP.NET は、クエリ文字列パラメーターにキーReturnURL. そのリダイレクト先を調整したい場合loginUrlは、Web.Config で場所を調整する必要があります。

そのような

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>

参照: MSDN の認証 Web.Config

于 2012-08-27T21:50:50.030 に答える