2016-11-03 152 views
0

據我所知,當你想認證用戶,你需要添加以下內容到webconfig。現在允許註冊頁面的用戶尚未註冊

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

,我把所有的代碼以註冊用戶,其中插入他們順利進入我的數據庫以及用於檢查並允許瀏覽器,只要正確的憑據被插入到用戶名和登錄頁面密碼字段。

我現在想要做的是按下「註冊」按鈕重定向到我的註冊頁面,但這與上面關於授權的代碼相沖突,我研究並發現需要做的是創建一個文件夾並在裏面有registrarion.aspx頁面,並使用以下參數爲所述文件夾創建一個web.config文件。

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

我的按鈕都有一個重定向一旦用戶被授權即如下的所有其他網頁,其工作代碼:

Response.Redirect("Register.aspx", true); 

按鈕但是,不會重定向到註冊頁面,什麼允許用戶註冊的其他方法會起作用嗎?

經進一步調查,我發現下面的代碼可以與我想要做的

<td>Username:</td> 
<td><input id="txtUserName" type="text" runat="server"></td> 
     <td><ASP:RequiredFieldValidator ControlToValidate="txtUserName" 
      Display="Static" ErrorMessage="*" runat="server" 
      ID="vUserName" /></td> 

同時需要用戶名和密碼進入,會因此受到影響重定向按鈕,即使webconfig允許非衝突用戶進入註冊頁面?

+0

那麼你的問題是什麼?你提出了一個問題,然後談論你如何解決問題,但沒有說明它是否有效,或者你目前面臨什麼問題。 – mason

+0

謝謝,我編輯了這個問題。 – Marcus

回答

0

我認爲你正在尋找這個。第一個<system.web>節點是每個Web.Config中的默認節點。在那裏,你拒絕匿名用戶使用<deny users="?"/>訪問該網站。 但是,這也會阻止用戶訪問註冊頁面,並在重定向循環中發送瀏覽器。 但是,您可以將<location>節點添加到Web.Config,並允許匿名用戶訪問註冊頁面<allow users="?"/>

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
    <globalization uiCulture="nl" culture="nl-NL" /> 
    <compilation targetFramework="4.5.1" /> 
    <httpRuntime targetFramework="4.5" executionTimeout="120" maxRequestLength="1024000" /> 
    <authentication mode="Forms"> 
     <forms cookieless="UseCookies" timeout="43200" loginUrl="/Register.aspx" defaultUrl="/Default.aspx" /> 
    </authentication> 
    <authorization> 
     <deny users="?"/> 
    </authorization> 
    </system.web> 
    <location path="Register.aspx"> 
    <system.web> 
     <authorization> 
     <allow users="?"/> 
     </authorization> 
    </system.web> 
    </location> 
</configuration> 
+0

你好,我試過這個,它沒有工作,我認爲這可能是由於在表單中需要輸入用戶名和密碼字段,將這個ifnormation添加到問題中。 – Marcus

+0

定義「沒有工作」?上面的代碼片段只允許匿名用戶訪問登錄頁面。它與表單中的必填字段無關。 – VDWWD