<?xml version="1.0" encoding="UTF-8"?>
<!-- web.config contributed to html5boilerplate by Velir : velir.com -->
<configuration>
    <configSections>
      <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
        <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
          <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
          <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
            <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
            <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
            <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
            <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
          </sectionGroup>
        </sectionGroup>
      </sectionGroup>
    </configSections>  

    <appSettings />
    <connectionStrings />
    <system.web>
        <!-- 
            Set compilation debug="true" to insert debugging 
            symbols into the compiled page. Because this 
            affects performance, set this value to true only 
            during development.
        -->
        <compilation debug="false">

          <assemblies>
            <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
            <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
            <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
          </assemblies>

        </compilation>
        <authentication mode="Windows" />
        <!--
            The <customErrors> section enables configuration 
            of what to do if/when an unhandled error occurs 
            during the execution of a request. Specifically, 
            it enables developers to configure html error pages 
            to be displayed in place of a error stack trace.

			<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
				<error statusCode="403" redirect="NoAccess.htm" />
				<error statusCode="404" redirect="FileNotFound.htm" />
			</customErrors>
        -->
			<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
				<error statusCode="404" redirect="404.html" />
			</customErrors>

      <pages>
        <controls>
          <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
          <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        </controls>
      </pages>

      <httpHandlers>
        <remove verb="*" path="*.asmx" />
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
      </httpHandlers>
      <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </httpModules>
    </system.web>

    <system.codedom>
      <compilers>
        <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
          <providerOption name="CompilerVersion" value="v3.5" />
          <providerOption name="WarnAsError" value="false" />
        </compiler>
        <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
          <providerOption name="CompilerVersion" value="v3.5" />
          <providerOption name="OptionInfer" value="true" />
          <providerOption name="WarnAsError" value="false" />
        </compiler>
      </compilers>
    </system.codedom>
    
    <system.webServer>
			<!-- 
				GZip static file content.  Overrides the server default which only compresses static files over 2700 bytes
			-->
			<httpCompression directory="%SystemDrive%\websites\_compressed" minFileSizeForComp="1024">
				<scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" />
				<staticTypes>
					<add mimeType="text/*" enabled="true" />
					<add mimeType="message/*" enabled="true" />
					<add mimeType="application/javascript" enabled="true" />
					<add mimeType="application/json" enabled="true" />
					<add mimeType="*/*" enabled="false" />
				</staticTypes>
			</httpCompression>

			<validation validateIntegratedModeConfiguration="false" />
      <modules>
        <remove name="ScriptModule" />
        <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </modules>
      <handlers>
        <remove name="WebServiceHandlerFactory-Integrated" />
        <remove name="ScriptHandlerFactory" />
        <remove name="ScriptHandlerFactoryAppServices" />
        <remove name="ScriptResource" />
        <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </handlers>
        <urlCompression doStaticCompression="true" />
        <staticContent>
					<!-- Set expire headers to 30 days for static content-->
					<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="30.00:00:00" />
					<!-- use utf-8 encoding for anything served text/plain or text/html -->
					<remove fileExtension=".css" />
					<mimeMap fileExtension=".css" mimeType="text/css; charset=UTF-8" />
					<remove fileExtension=".js" />
					<mimeMap fileExtension=".js" mimeType="text/javascript; charset=UTF-8" />
					<remove fileExtension=".json" />
					<mimeMap fileExtension=".json" mimeType="application/json; charset=UTF-8" />
					<remove fileExtension=".rss" />
					<mimeMap fileExtension=".rss" mimeType="application/rss+xml; charset=UTF-8" />
					<remove fileExtension=".html" />
					<mimeMap fileExtension=".html" mimeType="text/html; charset=UTF-8" />
					<remove fileExtension=".xml" />
					<mimeMap fileExtension=".xml" mimeType="application/xml; charset=UTF-8" />
					<!-- HTML5 Video mime types-->
					<mimeMap fileExtension=".mp4" mimeType="video/mp4" />
					<mimeMap fileExtension=".m4v" mimeType="video/m4v" />
					<mimeMap fileExtension=".ogg" mimeType="video/ogg" />
					<mimeMap fileExtension=".ogv" mimeType="video/ogg" />
					<mimeMap fileExtension=".webm" mimeType="video/webm" />
					<!-- Proper svg serving. Required for svg webfonts on iPad -->
					<mimeMap fileExtension=".svg" mimeType="images/svg+xml" />
					<mimeMap fileExtension=".svgz" mimeType="images/svg+xml" />
					<!-- HTML4 Web font mime types -->
					<!-- Remove default IIS mime type for .eot which is application/octet-stream -->
					<remove fileExtension=".eot" />
					<mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
					<mimeMap fileExtension=".otf" mimeType="font/otf" />
					<mimeMap fileExtension=".woff" mimeType="font/x-woff" />

				</staticContent>
        <httpProtocol>
            <customHeaders>
				<!-- 
					http://hacks.mozilla.org/2009/07/cross-site-xmlhttprequest-with-cors/
					Uncomment to serve cross-domain ajax requests
				
					<add name="Access-Control-Allow-Origin" value="*" />
				-->

				<!-- 
					Force the latest IE version, in various cases when it may fall back to IE7 mode
					 github.com/rails/rails/commit/123eb25#commitcomment-118920
					Use ChromeFrame if it's installed for a better experience for the poor IE folk 
				-->		
					<add name="X-UA-Compatible" value="IE=Edge,chrome=1" />
							
				<!-- 
					Allow cookies to be set from iframes (for IE only)
					If needed, uncomment and specify a path or regex in the Location directive 

					<add name="P3P" value="policyref=&quot;/w3c/p3p.xml&quot;, CP=&quot;IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT&quot;" />
				-->
            </customHeaders>
        </httpProtocol>
				<!-- 
					Remove the WWW from the URL.  
					Requires IIS Rewrite module http://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/ 
					Configuration lifted from http://nayyeri.net/remove-www-prefix-from-urls-with-url-rewrite-module-for-iis-7-0
					 
					 <rewrite>
						<rules>
						  <rule name="Remove WWW" stopProcessing="true">
							<match url="^(.*)$" />
							<conditions>
							  <add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
							</conditions>
							<action type="Redirect" url="http://nayyeri.net{PATH_INFO}" redirectType="Permanent" />
						  </rule>
						</rules>
					 </rewrite>
				-->
    </system.webServer>

    <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" />
          <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
        </dependentAssembly>
        <dependentAssembly>
          <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35" />
          <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
        </dependentAssembly>
      </assemblyBinding>
    </runtime>
</configuration>
