Masalah ReturnUrl dengan otentikasi formulir

pemrograman


Halo semuanya,
Saya sedang mengerjakan Asp.net 4.0 c#

Saya menghadapi masalah dengan pengalihan di halaman beranda.
Apa yang sebenarnya terjadi
Saya membuat situs baru dengan fungsionalitas tersebut
– otentikasi formulir
– penyedia peran khusus
– peta situs (dari web.sitemap)
Situs ini dibangun dan di-debug dengan benar.
Dan persyaratan saya adalah ketika seseorang mengunjungi situs dia harus dapat melihat home.aspx (halaman beranda Situs) tetapi
ketika saya menjalankan situs itu dialihkan ke login.aspx (halaman login situs) dan URL saya menjadi seperti
“http://localhost:1552/aspx/Login.aspx?ReturnUrl=%2faspx%2fHome.aspx”

Halaman master juga tidak diterapkan dengan CSS-nya, hanya konten halaman master yang ditampilkan.

Perubahan file web.config untuk otentikasi formulir adalah

XML
<authentication mode="Forms">
    <forms defaultUrl="~/aspx/Home.aspx"  loginUrl="~/aspx/Login.aspx"  timeout="60"/>
  </authentication>

# Untuk peta situs, ada perubahan pada Web.config

XML
<siteMap defaultProvider="AspNetXmlSiteMapProvider" enabled="true">
      <providers>
        <clear />
        <add name="AspNetXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
     siteMapFile="web.sitemap" securityTrimmingEnabled="true"  />
      </providers>
    </siteMap>

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

Dan untuk otentikasi saya memiliki 2 tipe pengguna 1. dari admin dan satu lagi tamu
untuk halaman aspx di sana saya telah membuat struktur folder secara terpisah dan di web.config saya menyediakan lokasi di sana sebagai

XML
<location path="aspx/_admin">
   <system.web>
     <authorization>
       <allow roles ="admin"/>
       <deny users="*"/>
     </authorization>
   </system.web>
 </location>
 <location path ="aspx/_guest" >
   <system.web>
     <authorization>
       <allow roles="guest" />
       <deny users="*"/>
     </authorization>
   </system.web>
 </location>

Saya rasa masalahnya terkait dengan otentikasi formulir atau mungkin karena tag lokasi yang telah saya tentukan di file web.config
Ini adalah kebutuhan yang mendesak, tenggat waktunya terlalu singkat. tolong bantu saya jika ada yang tahu solusinya

Solusi 1

Tambahkan juga bagian di web.config.

XML
<location path="~/Home.aspx">
   <system.web>
     <authorization>
       <allow users="*" />
     </authorization>
   </system.web>
 </location>

コメント

タイトルとURLをコピーしました