Skip Navigation Links.

Required Web.config Configuration

Email Settings

If you are using ForgotPassword.aspx or Signup.aspx you will need to customize the following web.config section for your email server settings.

<system.net>
  <mailSettings>
    <smtp from="youremail" deliveryMethod="Network">
      <network host="yoursmtpserver" />
    </smtp>
  </mailSettings>
</system.net>

ASP.NET Membership and Forms Authentication

The following settings are required for ASP.NET Membership

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <authentication mode="Forms">
      <forms
        cookieless="UseCookies"
        defaultUrl="~/Default.aspx"
        domain=""
        enableCrossAppRedirects="false"
        loginUrl="~/Login.aspx"
        name=".ASPXAUTH"
        path="/"
        protection="All"
        requireSSL="false"
        slidingExpiration="true"
        timeout="30"
      />
    </authentication>

    <membership
      defaultProvider="AspNetSqlMembershipProvider"
      hashAlgorithmType="SHA1"
      userIsOnlineTimeWindow="15"
    >
      <providers>
        <clear />
        <add
          name="AspNetSqlMembershipProvider"
          type=
          "
            System.Web.Security.SqlMembershipProvider, 
            System.Web, 
            Version=2.0.0.0, 
            Culture=neutral, 
            PublicKeyToken=b03f5f7f11d50a3a
          "
          connectionStringName="LocalSqlServer"
          applicationName="/"
          passwordFormat="Hashed"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          requiresUniqueEmail="false"
          maxInvalidPasswordAttempts="5"
          minRequiredPasswordLength="7"
          minRequiredNonalphanumericCharacters="1"
          passwordStrengthRegularExpression=""
          passwordAttemptWindow="10"
        />
      </providers>
    </membership>

    <roleManager
      defaultProvider="AspNetSqlRoleProvider"
      cacheRolesInCookie="true"
      cookieName=".ASPXROLES"
      cookiePath="/"
      cookieProtection="All"
      cookieRequireSSL="false"
      cookieSlidingExpiration="true"
      cookieTimeout="30"
      createPersistentCookie="false"
      maxCachedResults="25"
      enabled="true"
    >
      <providers>
        <clear />
        <add
          name="AspNetSqlRoleProvider"
          type=
          "
            System.Web.Security.SqlRoleProvider, 
            System.Web, 
            Version=2.0.0.0, 
            Culture=neutral, 
            PublicKeyToken=b03f5f7f11d50a3a
          "
          connectionStringName="LocalSqlServer"
          applicationName="/"
        />
      </providers>
    </roleManager>
  </system.web>
</configuration>

ASP.NET AJAX and AJAX Control Toolkit

The following settings are required for ASP.NET AJAX and the AJAX Control Toolkit. If you are using Visual Studio.NET 2008 and ASP.NET 3.5 then the only setting you need is the AJAX Control Toolkit Server Control section that is commented out.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <pages styleSheetTheme="Sunny">
      <controls>
        <!-- ASP.NET AJAX 1.0 Server Controls -->
        <add 
          tagPrefix="asp" 
          namespace="System.Web.UI" 
          assembly=
          "
            System.Web.Extensions, 
            Version=1.0.61025.0, 
            Culture=neutral, 
            PublicKeyToken=31bf3856ad364e35
          " 
        />
        <!-- AJAX Control Toolkit Server Controls for ASP.NET 2.0 -->
        <add 
          tagPrefix="act" 
          namespace="AjaxControlToolkit" 
          assembly=
          "
            AjaxControlToolkit, 
            Version=1.0.20229.20821, 
            Culture=neutral, 
            PublicKeyToken=28F01B0E84B6D53E
          " 
        />
        <!-- AJAX Control Toolkit Server Controls for ASP.NET 3.5
        <add 
          tagPrefix="act" 
          namespace="AjaxControlToolkit" 
          assembly=
          "
            AjaxControlToolkit, 
            Version=3.0.20229.20843, 
            Culture=neutral, 
            PublicKeyToken=28F01B0E84B6D53E
          " 
        />
         -->
      </controls>
    </pages>

    <compilation>
      <assemblies>
        <!-- ASP.NET AJAX 1.0 Assemblies -->
        <add 
          assembly=
          "
            System.Web.Extensions, 
            Version=1.0.61025.0, 
            Culture=neutral, 
            PublicKeyToken=31bf3856ad364e35
          "
        />
      </assemblies>
    </compilation>

    <httpHandlers>
      <!-- ASP.NET AJAX 1.0 JavaScript Handler -->
      <add 
        verb="GET,HEAD" 
        path="ScriptResource.axd" 
        type=
        "
          System.Web.Handlers.ScriptResourceHandler, 
          System.Web.Extensions, 
          Version=1.0.61025.0, 
          Culture=neutral, 
          PublicKeyToken=31bf3856ad364e35
        " 
        validate="false" 
      />
    </httpHandlers>
    
    <httpModules>
      <add 
        name="ScriptModule" 
        type=
        "
          System.Web.Handlers.ScriptModule, 
          System.Web.Extensions, 
          Version=1.0.61025.0, 
          Culture=neutral, 
          PublicKeyToken=31bf3856ad364e35" 
      />
    </httpModules>
  </system.web>
</configuration>

Site Map Navigation Settings

The following SiteMap provider configuration is required for the navigation in the admin area of the site.

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <siteMap>
      <providers>
        <add 
          name="Links" 
          siteMapFile="~/Layouts/Links.sitemap" 
          securityTrimmingEnabled="true" 
          type=
          "
            System.Web.XmlSiteMapProvider, 
            System.Web, 
            Version=2.0.0.0, 
            Culture=neutral, 
            PublicKeyToken=b03f5f7f11d50a3a
          " 
        />
        <add 
          name="AdminTabs" 
          siteMapFile="~/Admin/Tabs.sitemap" 
          securityTrimmingEnabled="true" 
          type=
          "
            System.Web.XmlSiteMapProvider, 
            System.Web, 
            Version=2.0.0.0, 
            Culture=neutral, 
            PublicKeyToken=b03f5f7f11d50a3a
          " 
        />
      </providers>
    </siteMap>
  </system.web>
</configuration>

Error Logging

The logs tab in the admin area displays errors that are logged to the SQL server database. To direct ASP.NET to send log messages to the database the following minimum configuration is required:

<healthMonitoring enabled="true">
  <eventMappings>
    <clear />
    <add name="Error" startEventCode="0" endEventCode="2147483647" type="System.Web.Management.WebBaseErrorEvent" />
  </eventMappings>
  <providers>
    <clear />
    <add name="SqlProvider" connectionStringName="LocalSqlServer" buffer="false" bufferMode="Notification" maxEventDetailsLength="1073741823" type="System.Web.Management.SqlWebEventProvider" />
  </providers>
  <rules>
    <clear />
    <add name="Errors" eventName="Error" provider="SqlProvider" profile="Critical" minInstances="1" maxLimit="Infinite" minInterval="00:00:00" />
  </rules>
</healthMonitoring>

For more information on configuring ASP.NET's health monitoring features please see http://msdn.microsoft.com/en-us/library/ms998306.aspx