مشكلة ReturnUrl في مصادقة النموذج


أهلا بالجميع،
أنا أعمل على Asp.net 4.0 c#

أواجه مشكلة في إعادة التوجيه على الصفحة الرئيسية.
ماذا يحدث بالضبط
أقوم بإنشاء موقع جديد به الوظيفة
– مصادقة النموذج
– مزود دور مخصص
– خريطة الموقع (من web.sitemap)
تم بناء الموقع وتصحيح الأخطاء بشكل صحيح.
ومتطلبي هو أنه عند زيارة أي شخص للموقع، يجب أن يتمكن من رؤية home.aspx (الصفحة الرئيسية للموقع) ولكن
عندما أقوم بتشغيل الموقع، تتم إعادة التوجيه إلى login.aspx (صفحة تسجيل الدخول للموقع) ويصبح عنوان URL الخاص بي كما يلي
“http://localhost:1552/aspx/Login.aspx?ReturnUrl=%2faspx%2fHome.aspx”

كما أن الصفحة الرئيسية لا يتم تطبيقها باستخدام CSS الخاص بها، بل يتم عرض محتوى الصفحة الرئيسية فقط.

تغييرات ملف Web.config لمصادقة النموذج هي

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

# بالنسبة لخريطة الموقع، فإن تغييرات 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>

وللمصادقة لدي نوعان من المستخدمين 1. من المشرف وضيف آخر
بالنسبة لصفحة aspx، قمت بإنشاء بنية المجلد بشكل منفصل وفي web.config قمت بتوفير الموقع هناك باسم

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>

أعتقد أن المشكلة مرتبطة بمصادقة النموذج أو قد تكون بسبب علامة الموقع التي حددتها في ملف web.config
إنه مطلب عاجل، الموعد النهائي قصير جدًا. الرجاء مساعدتي إذا كان أي شخص يعرف الحل

الحل 1

أضف أيضًا قسمًا في web.config.

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

コメント

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