2013-01-14 11 views
7

मुझे आईआईएस सेटिंग के डिफ़ॉल्ट दस्तावेज़ के साथ कोई समस्या है। मेरी साइट में (http: // mysite) मैंने लॉगिन पेज के रूप में डिफ़ॉल्ट दस्तावेज़ प्रदान किया है। जब उपयोगकर्ता यूआरएल टाइप करता है (http: // mysite) यह उपयोगकर्ता को लॉगिन पेज पर रीडायरेक्ट करता है लेकिन पूरा यूआरएल (http: //mysite/login.aspx) प्रदर्शित नहीं करता है। ऐसा लगता है कि डिफ़ॉल्ट दस्तावेज़ server.trirect की बजाय server.transfer करता है। इसके कारण जब उपयोगकर्ता अपने क्रेडेंशियल्स दर्ज करते हैं और फिर साइन इन पर क्लिक करते हैं, तो यह फिर से उन्हें लॉगिन करने के लिए रीडायरेक्ट करता है और वहां से ठीक काम करता है। तो उपयोगकर्ता को दो बार अपने प्रमाण पत्र दर्ज करना होगा।डिफ़ॉल्ट दस्तावेज़ पूर्ण यूआरएल प्रदर्शित नहीं कर रहा है

मेरा ऐप .NET 3.5 पर विकसित किया गया है।

क्या कोई तरीका है कि मैं respond.redirect प्राप्त कर सकता हूं।

उत्तर

1

निम्नलिखित सटीक सामग्री के साथ डिफ़ॉल्ट दस्तावेज़ जगह पाठ फ़ाइल नामित web.config (कोई .txt, .xml या किसी अन्य एक्सटेंशन) को उसी फ़ोल्डर में:

<?xml version="1.0"?> 
<configuration> 
    <system.webServer> 
     <rewrite> 
      <rules> 
       <rule name="Redirect to login" stopProcessing="true"> 
        <match url=".*" /> 
        <conditions> 
         <add input="{URL}" pattern="^/$" /> 
        </conditions> 
        <action type="Redirect" url="/login.aspx" redirectType="Permanent" /> 
       </rule> 
      </rules> 
     </rewrite> 
    </system.webServer> 
</configuration> 
+0

नमस्ते, क्या आपका मतलब है कि मुझे उस फ़ोल्डर में एक और web.config रखना चाहिए जहां मेरा लॉगिन पृष्ठ बैठता है? मेरा लॉगिन पेज अलग-अलग फ़ोल्डर में बैठता है। यह सीधे रूट फ़ोल्डर के नीचे नहीं है। – Punit

+0

दूसरा? एक फ़ोल्डर में एक फ़ाइल नाम का उपयोग केवल एक बार किया जा सकता है। यदि आपके पास उस फ़ोल्डर में मौजूदा web.config है, तो आपको इस XML कोड के साथ विलय करना होगा। –

3

डिफ़ॉल्ट दस्तावेज़ के रूप में एक index.html का उपयोग करें आपकी मूल निर्देशिका में। इस index.html में या तो मेटा रीफ्रेश या जावास्क्रिप्ट को अपने login.aspx पृष्ठ पर रीडायरेक्ट करें। निम्नलिखित उदाहरण मेटा रीफ्रेश कोड देखें।

अपनी परियोजना

website 
    index.html 
    secure/login.aspx 

index.html

<!DOCTYPE html> 
<html> 
<head> 
<title>YOUR PROJECT NAME</title> 
    <meta http-equiv="refresh" content="0;URL='http://www.YOURDOMAIN:COM/secure/login.aspx'" />  
</head> 

<body> 
    <p> Click to 
     <a href="http://www.YOURDOMAIN:COM/secure/login.aspx">Login</a> 
    </p> 

</body> 

</html> 
0

अपने लॉग इन पेज के Page_Init में लाइनों निम्नलिखित लिखें।

Protected Sub Page_Init(sender As Object, e As System.EventArgs) Handles Me.Init 
    If Not MyBase.IsPostBack Then 
     If HttpContext.Current.Request.Url.ToString.Contains("Login") = False Then 
      Response.Redirect("~/Login.aspx") 
     End If 
End Sub 
संबंधित मुद्दे