Steve Schofield's Blog

  • App Warm-up Module released for Windows Server 2008 R2

    I’ve been a little busy and catching up on Windows 8/IIS8.  Here is some good news from the IIS/ASP.NET team.  A couple useful module released for IIS 7.5.  For those running SharePoint farms and the app pool warm-up takes ‘forever’.  Here is a way to help.   This is definitely great news for IIS web server administrators.  Thanks Shawn and MS for releasing this much needed module.  Enjoy!!

     
    “We are pleased to announce that Release Candidate builds for the following IIS extensions are now available for download:

    · Application Initialization for IIS 7.5 (replacement for the previous “Application Warmup” beta extension)

    · Dynamic IP Restrictions for IIS 7/7.5

    See below for details and download links.

    Application Initialization for IIS 7.5 (Release Candidate)

    Application Initialization 1.0 for IIS 7.5 enables website administrators to configure IIS to proactively perform initialization tasks for one or more web applications. While an application is being initialized, IIS can also be configured to return an alternate response such as static content as a placeholder or "splash page" until an application has completed its initialization tasks. The module includes the following features:

    · Introduces the concept of a "warmup period" to the server.

    · Enables developers to control the behavior of their applications during the warmup period.

    · Enables server administrators to "pre-load" important applications by initializing them as soon as the worker process starts.

    · Allows seamless recycling of pre-loaded application pools with no user-perceptible impact.

    x64 download: http://go.microsoft.com/fwlink/?LinkId=247817

    x86 download: http://go.microsoft.com/fwlink/?LinkId=247816

    Support forum: http://forums.iis.net/1165.aspx

    Documentation:

    IIS 8.0 Application Initialization (this was written for IIS 8, but this extension provides the same functionality for IIS 7.5)

    Dynamic IP Restrictions for IIS 7/7.5 (Release Candidate)

    The Dynamic IP Restrictions Extension for IIS provides IT Professionals and Hosters a configurable module that helps mitigate or block Denial of Service Attacks or cracking of passwords through brute-force by temporarily blocking Internet Protocol (IP) addresses of HTTP clients who follow a pattern that could be conducive to one of such attacks. This module can be configured such that the analysis and blocking could be done at the Web Server or the Web Site level. The module includes the following features:

    · Seamless integration into IIS 7.0 Manager.

    · Dynamically blocking of requests from IP address based on either of the following criteria:

    o The number of concurrent requests.

    o The number of requests over a period of time.

    · Blocking of requests can be configured at either site or server level.

    · Configurable deny actions allows IT Administrators to specify what response would be returned to the client. The module support return status codes 401, 403, 404 or blocking the requests entirely.

    · Support for IPv6 addresses.

    · Support for web servers behind a proxy or firewall.

    x64 download: http://go.microsoft.com/fwlink/?LinkId=247814

    x86 download: http://go.microsoft.com/fwlink/?LinkId=247815

    Support forum: http://forums.iis.net/1043.aspx

    Documentation:

    Using Dynamic IP Restrictions”

  • Getting AWStats installed and configured on IIS 7.5

    One of things I’ve wanted to evaluate is AWStats for doing analytics on a variety of sites I run. AWStats (www.awstats.org) is a free Open Source (Perl based) package. One of the things I couldn't find that covered the steps to get IIS 7.5 up and running.  I’m still working on a few config items within AWStats, which if you have suggestions, please let me know.

    Here is the order of what I did to get my server up and running. I’ll assume you have a Windows Server 2008 or 2008 R2 server with IIS Installed.   If you have any further questions, comments please feel free to add to the article. 

    Steps

    • Download, Install ActivePerl
    • Download AWStats
    • Setup DNS (Optional)
    • Setup IIS Site
    • Configure App Pool as 32 bit
    • Setup Perl Handler, approve isapi
    • Setup AWStats conf files.
    • Enable frequent updates
    • Misc things

     

  • Great SEO article

    I ran across a great SEO article via Twitter, the link is here

    http://www.seomoz.org/blog/what-every-seo-should-know-about-iis

    There was a comment I wanted to add a few ideas, I tried to format the comment, however it didn’t format to cleanly so I thought I’d add here.    Review the comments in the article too, there is some additional items that are worth mentioned.  I hope he picks up this post and adds the couple links for reference.

    Couple other things to reference to this great article. Here are three commands I run on all servers. I use the compression level 9 on a very high volume with no impact, Here is another article on other properties and http://learn.iis.net/page.aspx/206/dynamic-compression/

    Scott Forsyth wrote an article on compress level and performance which is a good read. http://weblogs.asp.net/owscott/archive/2009/02/22/iis-7-compression-good-bad-how-much.aspx

    Enables

    c:\windows\system32\inetsrv\appcmd set config /section:urlCompression /doDynamicCompression:true

    Sets the compression level
    c:\windows\system32\inetsrv\appcmd set config /section:system.webServer/httpCompression -[name="'gzip'"].dynamicCompressionLevel:9"Mkdir D:\Data\IISTemporaryCompressedFiles"

    Sets the directory path
    c:\windows\system32\inetsrv\appcmd set config /section:httpCompression /directory:D:\Data\IISTemporaryCompressedFiles /maxDiskSpaceUsage:100 /minFileSizeForComp:256"

    Hope this helps