<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Jimmie's Sharings</title><subtitle type="html">SharePoint/MOSS information.</subtitle><id>http://blogs.msdn.com/jimmiet/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/jimmiet/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-03-29T15:56:00Z</updated><entry><title>interfacing SharePoint with Akamai</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2009/06/14/interfacing-sharepoint-with-akamai.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2009/06/14/interfacing-sharepoint-with-akamai.aspx</id><published>2009-06-14T17:53:00Z</published><updated>2009-06-14T17:53:00Z</updated><content type="html">&lt;SDT id=89512093 contentlocked="t" sdtgroup="t"&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 1pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-theme-font: minor-latin; mso-fareast-theme-font: minor-fareast; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-ansi-language: en-us; mso-fareast-language: en-us; mso-bidi-language: ar-sa"&gt;&lt;SDTPR&gt;&lt;/SDTPR&gt;&lt;SDT id=895120f82 title="Post Title" xpath="/ns0:BlogPostInfo/ns0:PostTitle" docpart="5F987EFA7DE644FDBDAEE7F80CAF247B" storeitemid="X_0B4855FA-06F9-437A-898C-EEC3DF6E7C8A" text="t"&gt;&lt;/SDT&gt;&lt;/SPAN&gt;
&lt;DIV style="BORDER-BOTTOM: #4f81bd 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 2pt; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-bottom-themecolor: accent1; mso-element: para-border-div"&gt;
&lt;P class=underline mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;
&lt;P class=PadderBetweenControlandBody&gt;&lt;SPAN lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/SDT&gt;
&lt;H1&gt;&lt;SPAN lang=EN-AU&gt;What is Akamai?&lt;/SPAN&gt;&lt;/H1&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Think of Akamai as a very intelligent, caching, reverse proxy server, which sits in front of your SharePoint farm. External user requests go to Akamai servers first. If Akamai has the content cached, it serves the content directly back to the client; otherwise Akamai requests the content from your SharePoint farm and then sends it to the client. Akamai does intelligent caching; that is, it can cache static portions of a page like images and stylesheets, while still getting the dynamic parts of the page from your SharePoint server. In any case, the client never directly hits your SharePoint farm.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Akamai is much more than just a reverse proxy server. Akamai has many farms of servers (at last report, more than 20,000 servers) distributed in 70 countries. Akamai has a dynamic mapping system, which uses heuristics and network performance historical data, to route the client request to the optimal Akamai farm.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Your SharePoint farm is referred to as the “origin farm” in Akamai literature. The basic content flow is illustrated in this table.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; MARGIN-LEFT: 11.35pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-padding-alt: 0in 2.85pt 0in 2.85pt; mso-border-bottom-alt: solid #999999 1.0pt; mso-border-top-alt: solid #999999 1.0pt; mso-yfti-tbllook: 1184" class=MsoTableGrid border=1 cellSpacing=0 cellPadding=0 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: #999999 1.5pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 0in" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;User browser makes request. &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: #999999 1.5pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 0in" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;=&amp;gt; &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Request routed to optimal Akamai farm &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: #999999 1.5pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 0in" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Akamai (Edge Server) checks cache, requests non-cached content. &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: #999999 1.5pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 0in" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;=&amp;gt; &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Request non-cached content &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.8pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: #999999 1.5pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 0in" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-weight: bold; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Origin (SharePoint Farm) generates non-cached or dynamic content &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-top-alt: solid #999999 1.0pt" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Client browser renders Akamai’s response &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-top-alt: solid #999999 1.0pt" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;&amp;lt;= &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-top-alt: solid #999999 1.0pt" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Akamai combines origin’s response with locally cached content &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.75pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-top-alt: solid #999999 1.0pt" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;&amp;lt;= &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 2.85pt; WIDTH: 95.8pt; PADDING-RIGHT: 2.85pt; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in; mso-border-top-alt: solid #999999 1.0pt" width=128&gt;
&lt;P style="TEXT-ALIGN: center; mso-yfti-cnfc: 64" class=MsoNormal align=center&gt;&lt;SPAN style="LINE-HEIGHT: 110%; mso-bidi-font-size: 9.0pt" lang=EN-AU&gt;Origin responds with content &lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;&lt;/SPAN&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Akamai is the only external user your origin farm will see. Due to this, blob and output caching is usually of limited benefit when using Akamai.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H1&gt;&lt;SPAN lang=EN-AU&gt;Working with Akamai&lt;/SPAN&gt;&lt;/H1&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;You contract with Akamai for its services. Akamai will assign a representative who will assist you in setting up origin farm to communicate with Akamai’s edge servers, and in configuring the Akamai edge server to meet your application’s needs. Akamai provides training and support as needed.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;You should plan on several weeks to get everything working.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;The high level steps are:&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;If using SSL, install an SSL certificate on your origin farm, and provide Akamai the certificate information so Akamai can request and install SSL certificates on the Akamai edge servers.&lt;BR&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;SPAN lang=EN-AU&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;Create a DNS record for your origin farm. The naming convention is your origin URL prefixed with “origin-“; for example, “origin-www.litwareinc.com”. Akamai will take over your URL; that is, &lt;A href="http://www.litwareinc.com/"&gt;www.litwareinc.com&lt;/A&gt;. Akamai refers to your URL as a digital property. Your contract with Akamai can include multiple digital properties; for example, if you are exposing multiple SharePoint web applications through Akamai.&lt;BR&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal&gt;Configure the Akamai edge server behavior.&amp;nbsp; The Akamai representative will provide you credentials to access the configuration console. Some of the more important configuration parameters are:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;a.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Whether to use SSL.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;b.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;The origin farm URL and port number if non-standard.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;c.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Cache key format, and whether to ignore case when comparing cache keys.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;d.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Compression to use when communicating with the origin farm.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;e.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Time to Live (TTL) rules, which determine what types of content Akamai should cache, and for how long.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN-LEFT: 1in; mso-add-space: auto; mso-list: l2 level2 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;f.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Prefetch rules.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; mso-list: l2 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;4.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Testing the Akamai configuration. Akamai has extensive reports to help you identify and tune page performance by adjusting the caching rules and other edge server settings.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; mso-list: l2 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;5.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Go Live. You can access the Akamai portal to periodically review performance reports, so you can adjust edge server configuration as needed.&lt;/SPAN&gt;&lt;/P&gt;
&lt;H1&gt;&lt;SPAN lang=EN-AU&gt;SharePoint Publishing – Cache Invalidation&lt;/SPAN&gt;&lt;/H1&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Akamai is most beneficial in content publishing scenarios; that is, where most users are anonymous and the content is mostly static. This scenario makes the caching provided by Akamai most effective. This translates to a SharePoint publishing portal. Since edge server cache TTL should be as long as possible, there needs to be a way to notify the edge server when a new page version has been published; thereby forcing the Akamai cached version of the page to be refreshed. Akamai provides the &lt;B style="mso-bidi-font-weight: normal"&gt;Content Control Utility&lt;/B&gt; (&lt;B style="mso-bidi-font-weight: normal"&gt;CCU&lt;/B&gt;) web service for this purpose.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;The CCU is a SOAP web service that allows you to specify the refreshing of specific cached objects, or to remove specific objects. The CCU provides the option of using invalidation-based or removal-base refreshing. Requests are propagated through the Akamai network, and most removals are completed within 10 minutes of the request. One limit is that files submitted for CCU requests should contain no more than about 100 URLs per SOAP request. Your Akamai representative will give you the end-point URL for this web service, and a user name and password required for authentication to the web service.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;A typical SharePoint configuration is to have an &lt;STRONG&gt;Authoring&lt;/STRONG&gt; farm when content pages are created and edited. Content deployment jobs periodically push new page versions to the &lt;STRONG&gt;Public&lt;/STRONG&gt; farm, which is the origin farm. To automate the &lt;STRONG&gt;CCU&lt;/STRONG&gt; web service calls, you can install event handles in the Public farm. The event handlers call the CCU web service for new, changed, and deleted pages. The architecture might look like the following diagram.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 410px; DISPLAY: inline; HEIGHT: 484px; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=akamai1 border=0 alt=akamai1 src="http://blogs.msdn.com/photos/jimmiet/images/9750695/original.aspx" width=410 height=484 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9750695/original.aspx"&gt; &lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Event receivers are installed on all libraries and lists which contain content that can be changed by authors. This includes modifications by Content Deployment jobs, or manual copying/deleting of assets in the Public farm. The asynchronous (after) events are used to minimize performance impacts.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The event handler is installed the Global Assembly Cache (GAC). This allows it to be called from any site in the Public farm. The event handler packages the URLs and then sends them to Akamai’s CCU web service.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;These events are captured by the event handlers: &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l0 level1 lfo3; tab-stops: list 45.35pt" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;ItemDeleted &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l0 level1 lfo3; tab-stops: list 45.35pt" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;ItemUpdated &lt;/SPAN&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;By default these libraries and lists in the public portal root site collection, and every subsite, should have event receivers installed. Additional lists and libraries may be added as needed. &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Pages Library &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Site Collection Image Library &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Site Collection Documents Library &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Style Library &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Images Library &lt;/SPAN&gt;
&lt;P style="TEXT-INDENT: -17pt; MARGIN-LEFT: 45.35pt; mso-add-space: auto; mso-list: l1 level1 lfo4; tab-stops: list 45.35pt" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: 'Wingdings 2'; COLOR: gray; mso-bidi-font-family: 'Wingdings 2'; mso-fareast-font-family: 'Wingdings 2'" lang=EN-AU&gt;&lt;SPAN style="mso-list: ignore"&gt;¾&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-AU&gt;Reusable Content List&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;A SOAP request is formatted according the Akamai’s Content_Control_Interfaces.pdf document. The Akamai user name and password are stored in SharePoint’s single sign-on repository for protection. SharePoint object model calls are used to retrieve the user name and password to make the web service call. The invalidate action is specified to minimize impact if the cache does not truly need to be updated. The response code is checked to determine if a retry is necessary.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;It is most effective to use asynchronous methods to call the CCU method, to prevent excessive blocking if the CCU web service is slow in responding. The async call might look like this picture.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=akamai2 border=0 alt=akamai2 src="http://blogs.msdn.com/photos/jimmiet/images/9750699/original.aspx" width=644 height=304 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9750699/original.aspx"&gt; &lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;The async response handler would look like this picture:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=akamai3 border=0 alt=akamai3 src="http://blogs.msdn.com/photos/jimmiet/images/9750702/original.aspx" width=644 height=369 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9750702/original.aspx"&gt; &lt;/P&gt;
&lt;H1&gt;&lt;SPAN lang=EN-AU&gt;Conclusion&lt;/SPAN&gt;&lt;/H1&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;Akamai can provide a huge performance boost for public portals serving global audiences. Most of the effort to set up Akamai is transparent to SharePoint. The exception is the need to forcefully update the Akamai cache when new content is published. Cache refreshing can be forced by calling the CCU web service provided by Akamai.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;SPAN lang=EN-AU&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9750800" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint Akamai" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint+Akamai/default.aspx" /></entry><entry><title>IIS 6.0 Compression</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2009/06/07/iis-6-0-compression.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2009/06/07/iis-6-0-compression.aspx</id><published>2009-06-07T17:37:00Z</published><updated>2009-06-07T17:37:00Z</updated><content type="html">&lt;H1 class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Introduction&lt;/H1&gt;
&lt;H2 class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Overview – What Problem Does IIS Compression Solve? &lt;/H2&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Total response time is composed of 3 major components. This can be expressed as a formula: &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt" class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;User response time = server processing time + network transmission time + client rendering time &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;The network transmission time can be a major component for remote users accessing SharePoint over WAN links. Reducing the number of bytes transmitted can reduce the network time. IIS Compression can accomplish this reduction in the number of bytes transmitted. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;IIS compression is highly configurable. Compression can be scoped to: &lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;&lt;FONT size=1&gt;Static, dynamic, or both static and dynamic content. &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;&lt;FONT size=1&gt;Entire web sites, specific directories, or even individual files. &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;&lt;FONT size=2&gt;&lt;FONT size=1&gt;Specific file types based upon file extension.&lt;/FONT&gt; &lt;/FONT&gt;&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;The compression level is a number between 0 and 10, where 10 is the greatest compression. More CPU resources are required for higher compression numbers. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;When SharePoint installed, IIS is configured to compress both static and dynamic files. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;By default static compression is on the file types: HTM, HTML, and TXT at level 10. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;By default static compression is on the file types: ASP and EXE at level 0. &lt;/P&gt;
&lt;H2 class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Static verses Dynamic Compression &lt;/H2&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Compressed static responses are cached to disk. Once the compressed page is cached, there is no further CPU overhead until the cache expires. Static compression can have dramatic effects; for example: core.js is 257 KB on disk, but IIS static compression reduces it to 54 KB. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Dynamic compression requires trial-and-error testing to find the optimal settings. Dynamic compression can affect CPU resources because IIS does not cache compressed dynamic output. If compression is enabled for dynamic responses and IIS receives a request for a file that contains dynamic content, the response that IIS sends is compressed every time it is requested. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;Because dynamic compression consumes considerable CPU time and memory resources, use it only on servers that have underutilized CPUs. If web site generates a large volume of dynamic content, consider whether the additional processing cost of HTTP compression can be reasonably afforded. If the &lt;STRONG&gt;% Processor Time&lt;/STRONG&gt; counter is already 80 percent or higher, enabling HTTP compression is not recommended. &lt;/P&gt;
&lt;P class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;To evaluate how much of your processor is typically being used, follow these steps: &lt;/P&gt;
&lt;DIV class=ExternalClass93F32F8D43044A9D9C865AC35369B39F&gt;
&lt;UL style="MARGIN-LEFT: 45pt"&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Establish a baseline for your processor usage by using System Monitor to log the following counters over several days. If you use Performance Logs and Alerts, you can log the data to a database and then query the data, examining the results in detail. &lt;/FONT&gt;&lt;/DIV&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;Processor\% Processor Time&lt;/STRONG&gt;. This counter has a total instance and a separate instance for each processor in the system. If your server has more than one processor, you need to watch the individual processors as well as the total to discover any imbalance in the workload. &lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;Network Interface\Bytes Sent/sec&lt;/STRONG&gt;. Counters for the Network Interface performance object display the rate at which bytes are transmitted over a TCP/IP connection by monitoring the counters on the network adapter. &lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Enable compression, and continue to log the values for these counters for an extended period — preferably for several days — so you have a good basis for comparison. Collect a broad sample to determine how compression affects various aspects of performance. Conduct the following tests: &lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;FONT size=2&gt;Try variations of compression settings. &lt;/FONT&gt;&lt;/DIV&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Enable static compression only, dynamic compressions only, and both. &lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Change the list of files that you use for compression testing for both static and dynamic content. &lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;FONT size=2&gt;Vary the compression level. &lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;/DIV&gt;
&lt;P&gt;Use the performance logs to determine the sweet spot at which &lt;STRONG&gt;Network Interface Bytes&lt;/STRONG&gt; is reduced the most while % &lt;STRONG&gt;Processor Time&lt;/STRONG&gt; remains below 80%. &lt;/P&gt;
&lt;H2&gt;Global, Web Site, Directory, File Scoping &lt;/H2&gt;
&lt;P&gt;Both static and dynamic compression can be configured at multiple scopes by scripting or by using the Metabase GUI tool. &lt;/P&gt;
&lt;P&gt;The script &lt;STRONG&gt;C:\Inetpub\AdminScripts\adsutil.vbs&lt;/STRONG&gt; is the recommended approach for configuration. This allows automated scripts to be applied to all web servers. &lt;/P&gt;
&lt;H2&gt;Gzip and Deflate &lt;/H2&gt;
&lt;P&gt;There are 2 types of compression: gzip and deflate. Gzip is actually a superset of deflate. Both should be configured the same (same types of files and same level of compression), so browsers using either compression method with get similar results. &lt;/P&gt;
&lt;H2&gt;Recommended Initial Configuration &lt;/H2&gt;
&lt;P&gt;These are the recommended starting values for gzip and deflate compression. These values can be adjusted based upon performance counter captures, to optimize the network bytes transmitted while keeping the CPU load within reasonable bounds. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoStaticCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoDynamicCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcOnDemandCompLevel : (INTEGER) 10 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 0 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) (6 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asp" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"exe" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"axd" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"ascx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asmx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"aspx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) (5Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"htm" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"html" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"txt" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"css" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"js" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;H1&gt;Configuring IIS 6.0 &lt;/H1&gt;
&lt;P&gt;Open a command prompt&lt;STRONG&gt;. &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Change directory to C:\Inetpub\AdminScripts &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Directory of C:\Inetpub\AdminScripts &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;04/03/2007 05:46 PM &amp;lt;DIR&amp;gt; . &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;04/03/2007 05:46 PM &amp;lt;DIR&amp;gt; .. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;11/13/2006 10:08 AM 85,813 &lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;adsutil.vbs&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;02/21/2003 08:48 PM 6,064 synciwam.vb &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;2 File(s) 91,877 bytes &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;2 Dir(s) 43,512,107,008 bytes free &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;C:\Inetpub\AdminScripts&amp;gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;H2&gt;Global Configuration &lt;/H2&gt;
&lt;P&gt;Capture the current settings for a historical record. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs enum W3Svc/Filters/Compression/Parameters&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;KeyType : (STRING) "IIsCompressionSchemes" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCompressionDirectory : (EXPANDSZ) "%windir%\IIS Temporary Compressed Files" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCacheControlHeader : (STRING) "max-age=86400" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcExpiresHeader : (STRING) "Wed, 01 Jan 1997 12:00:00 GMT" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoDynamicCompression : (BOOLEAN) False &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;HcDoStaticCompression : (BOOLEAN) True&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoOnDemandCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoDiskSpaceLimiting : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcNoCompressionForHttp10 : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcNoCompressionForProxies : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcNoCompressionForRange : (BOOLEAN) False &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcSendCacheHeaders : (BOOLEAN) False &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcMaxDiskSpaceUsage : (INTEGER) 99614720 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcIoBufferSize : (INTEGER) 8192 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCompressionBufferSize : (INTEGER) 8192 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcMaxQueueLength : (INTEGER) 1000 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFilesDeletedPerDiskFree : (INTEGER) 256 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcMinFileSizeForComp : (INTEGER) 1 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs enum W3Svc/Filters/Compression/DEFLATE&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;KeyType : (STRING) "IIsCompressionScheme" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoDynamicCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoStaticCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoOnDemandCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCompressionDll : (EXPANDSZ) "%windir%\system32\inetsrv\gzip.dll" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) (3 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"htm" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"html" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"txt" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) (2 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asp" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;"exe"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcPriority : (INTEGER) 1 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 0 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;HcOnDemandCompLevel : (INTEGER) 10&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCreateFlags : (INTEGER) 0 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs enum W3Svc/Filters/Compression/GZIP&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;KeyType : (STRING) "IIsCompressionScheme" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoDynamicCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoStaticCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoOnDemandCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCompressionDll : (EXPANDSZ) "%windir%\system32\inetsrv\gzip.dll" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) (6 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"htm" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"html" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"txt" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) (3 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asp" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"exe" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcPriority : (INTEGER) 1 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;HcDynamicCompressionLevel : (INTEGER) 0&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;HcOnDemandCompLevel : (INTEGER) 10&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcCreateFlags : (INTEGER) 1 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Enable a setting; for example, turn on global static compression if it is currently off: &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs set w3svc/filters/compression/parameters/HcDoStaticCompression true&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDoStaticCompression : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Add CSS and JS file types to the static compressed file types. CSS (Cascading Stylesheets) and JS (JavaScript) will provide the most performance gains with SharePoint &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3SVC/Filters/Compression/Deflate/HcFileExtensions "htm" "html" "txt" "css" "js"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) "htm" "html" "txt" "css" "js" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs get W3SVC/Filters/Compression/Deflate/HcFileExtensions &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) (1 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"htm "html" "txt" "css" "js" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3SVC/Filters/Compression/gzip/HcFileExtensions "htm" "html" "txt" "css" "js"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) "htm" "html" "txt" "css" "js" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs GET W3SVC/Filters/Compression/gzip/HcFileExtensions &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcFileExtensions : (LIST) (1 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"htm" "html" "txt" "css" "js" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Add AXD, ASMX, &amp;amp; ASPX to dynamic file list. Tip: Don't compress JPG/JPEG images (already compressed). &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3Svc/Filters/Compression/DEFLATE/HcScriptFileExtensions "asp" "exe" "axd" "aspx"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) "asp" "exe" "axd" "aspx" "asmx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs GET W3Svc/Filters/Compression/DEFLATE/HcScriptFileExtensions &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) (5 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asp" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"exe" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"axd" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asmx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"aspx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3Svc/Filters/Compression/GZIP/HcScriptFileExtensions &lt;SPAN style="COLOR: black"&gt;"asp" "exe" "axd" "apx"&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) "asp" "exe" "axd" "aspx" "asmx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs GET W3Svc/Filters/Compression/GZIP/HcScriptFileExtensions &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcScriptFileExtensions : (LIST) (4 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asp" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"exe" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"axd" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"asmx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"aspx" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Consider testing the impact of varying compression levels in a laboratory environment closely monitoring CPU utilization and potential impact to the Web servers. Typically a compression level between 7 and 9 provides optimum performance vs. CPU load in most circumstances. Tip: Start with dynamic compression level set to 4, and then try increasing to see the CPU impact. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3Svc/Filters/Compression/DEFLATE/HcDynamicCompressionLevel 4&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 4 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs GET W3Svc/Filters/Compression/DEFLATE/HcDynamicCompressionLevel &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 4 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET W3Svc/Filters/Compression/GZIP/HcDynamicCompressionLevel 4&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 4 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;cscript adsutil.vbs GET W3Svc/Filters/Compression/GZIP/HcDynamicCompressionLevel &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HcDynamicCompressionLevel : (INTEGER) 4 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;H2&gt;Web Site Scope Configuration &lt;/H2&gt;
&lt;P&gt;In some cases you may wish to enable or disable compression at only the site or site element level as opposed to global level. Use the path to the web site in the adsutil command line. You can determine the site path using the &lt;STRONG&gt;IIS Metabase Explorer&lt;/STRONG&gt; application available in the IIS 6.0 Resource Kit, or by enumerating sites using the &lt;STRONG&gt;adsutil.vbs &lt;/STRONG&gt;script. &lt;/P&gt;
&lt;P&gt;&lt;IMG alt="" src="http://blogs.msdn.com/photos/jimmiet/images/9704266/original.aspx"&gt;&lt;SPAN style="FONT-FAMILY: arial narrow; FONT-SIZE: 8pt"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs enum w3svc&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;KeyType : (STRING) "IIsWebService" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;MaxConnections : (INTEGER) 4294967295 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;AnonymousUserName : (STRING) "IUSR_EPGOPSR2BASE" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;AnonymousUserPass : (STRING) "**********" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;ConnectionTimeout : (INTEGER) 120 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;AllowKeepAlive : (BOOLEAN) True &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;DefaultDoc : (STRING) "Default.htm,Default.asp,index.htm" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HttpCustomHeaders : (LIST) (1 Items) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;"X-Powered-By: ASP.NET" &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;(many lines removed here) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/1513483211] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/1669737538] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/1720207907] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/2004785039] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/809964160] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/941433650] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/AppPools] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow; FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;[/w3svc/Filters] &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;[/w3svc/Info]&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;You can match the w3svc web site numbers to the web site name using the IIS Manager MMC. In the following picture we see the collaboration web site is web site ID 809964160. &lt;/P&gt;
&lt;P&gt;&lt;IMG alt="" src="http://blogs.msdn.com/photos/jimmiet/images/9704264/original.aspx"&gt; &lt;/P&gt;
&lt;P&gt;If we assume the collaboration web site is only accessed by users on the local LAN where network bandwidth is not an issue, we can disable dynamic compress for just this web site by using the web site metabase path (&lt;STRONG&gt;w3svc/809964160/root/&lt;/STRONG&gt;) to set the &lt;STRONG&gt;DoDynamicCompression&lt;/STRONG&gt; parameter. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;&amp;gt;&lt;SPAN style="BACKGROUND-COLOR: yellow"&gt;cscript adsutil.vbs SET w3svc/809964160/root/DoDynamicCompression false&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Microsoft (R) Windows Script Host Version 5.6 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;DoDynamicCompression : (BOOLEAN) False &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;H2&gt;Restart IIS &lt;/H2&gt;
&lt;P&gt;After completing the configuration changes, always restart IIS. At a command prompt, either enter &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;IISReset &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Or &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;NET STOP W3SVC &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;NET START W3SVC &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;H1&gt;Example Improvement with Compression &lt;/H1&gt;
&lt;P&gt;With static compression set to 10, and dynamic compression set to 4, Fiddler captured these statistics for a publishing site home page. The round trip cost and elapsed time values are estimates based upon typical network latency. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Request Count:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 43 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Bytes Sent:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24,716 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Bytes Received: 218,719 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;ACTUAL PERFORMANCE &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Requests started at:&amp;nbsp;&amp;nbsp;&amp;nbsp; 08:37:02:5221 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Responses completed at:&amp;nbsp;&amp;nbsp;&amp;nbsp; 08:37:05:0157 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Total Sequence time:&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:00:02.4935856 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;RESPONSE CODES &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HTTP/401:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HTTP/200:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 35 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;RESPONSE BYTES (by Content-Type) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;image/gif:&amp;nbsp;&amp;nbsp;&amp;nbsp; 30,479 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;text/css:&amp;nbsp;&amp;nbsp;&amp;nbsp; 17,003 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;~headers:&amp;nbsp;&amp;nbsp;&amp;nbsp; 18,432 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;image/jpeg:&amp;nbsp;&amp;nbsp;&amp;nbsp; 13,634 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;text/html:&amp;nbsp;&amp;nbsp;&amp;nbsp; 28,335 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;application/x-javascript:&amp;nbsp;&amp;nbsp;&amp;nbsp; 110,836 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;ESTIMATED WORLDWIDE PERFORMANCE &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;The following are VERY rough estimates of download times when hitting servers based in WA, USA. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;US West Coast (Modem - 6KB/sec) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 4.30s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 44.30s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Japan / Northern Europe (Modem) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 6.45s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 46.45s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;China (Modem) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 19.35s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 59.35s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;US West Coast (DSL - 30KB/sec) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 4.30s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12.30s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Japan / Northern Europe (DSL) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 6.45s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 14.45s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;China (DSL) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 19.35s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 27.35s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;These results are for the same page with static and dynamic compression disabled. &lt;/P&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Request Count:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 39 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Bytes Sent:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 21,626 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Bytes Received: 772,669 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;ACTUAL PERFORMANCE &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Requests started at:&amp;nbsp;&amp;nbsp;&amp;nbsp; 08:41:59:8797 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Responses completed at:&amp;nbsp;&amp;nbsp;&amp;nbsp; 08:42:25:8069 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Total Sequence time:&amp;nbsp;&amp;nbsp;&amp;nbsp; 00:00:25.9272816 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;RESPONSE CODES &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HTTP/401:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;HTTP/200:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 37 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;RESPONSE BYTES (by Content-Type) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;image/gif:&amp;nbsp;&amp;nbsp;&amp;nbsp; 30,565 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;text/css:&amp;nbsp;&amp;nbsp;&amp;nbsp; 103,482 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;~headers:&amp;nbsp;&amp;nbsp;&amp;nbsp; 15,093 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;image/jpeg:&amp;nbsp;&amp;nbsp;&amp;nbsp; 13,634 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;text/html:&amp;nbsp;&amp;nbsp;&amp;nbsp; 72,976 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;application/x-javascript:&amp;nbsp;&amp;nbsp;&amp;nbsp; 536,919 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;ESTIMATED WORLDWIDE PERFORMANCE &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;-------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;The following are VERY rough estimates of download times when hitting servers based in WA, USA. &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;US West Coast (Modem - 6KB/sec) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 3.90s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 135.90s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Japan / Northern Europe (Modem) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 5.85s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 137.85s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;China (Modem) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 17.55s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 149.55s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;US West Coast (DSL - 30KB/sec) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 3.90s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 29.90s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Japan / Northern Europe (DSL) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 5.85s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 31.85s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;China (DSL) &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;--------------- &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Round trip cost: 17.55s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN style="BACKGROUND: #d9d9d9; MARGIN-LEFT: 28pt"&gt;&lt;SPAN style="FONT-FAMILY: courier new; FONT-SIZE: 10pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 43.55s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;Note the following differences: &lt;/P&gt;
&lt;DIV style="MARGIN-LEFT: 11pt"&gt;
&lt;TABLE style="BORDER-COLLAPSE: collapse" border=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="WIDTH: 205px"&gt;
&lt;COL style="WIDTH: 206px"&gt;
&lt;COL style="WIDTH: 206px"&gt;&lt;/COLGROUP&gt;
&lt;TBODY vAlign=top&gt;
&lt;TR style="BACKGROUND: #e6e6e6"&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP: #999999 1.5pt solid"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;STRONG&gt;Description&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP: #999999 1.5pt solid"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;STRONG&gt;With Compression&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1.5pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP: #999999 1.5pt solid"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;STRONG&gt;Without Compression&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Bytes Received: &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;218,719&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;772,669&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;RESPONSE BYTES (by Content-Type)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;image/gif:&amp;nbsp;&amp;nbsp;&amp;nbsp; 30,479 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;text/css:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 17,003 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;~headers:&amp;nbsp;&amp;nbsp;&amp;nbsp; 18,432 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;image/jpeg:&amp;nbsp;&amp;nbsp;&amp;nbsp; 13,634 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;text/html:&amp;nbsp;&amp;nbsp;&amp;nbsp; 28,335 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;application/x-javascript:&amp;nbsp;&amp;nbsp;&amp;nbsp; 110,836&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;image/gif:&amp;nbsp;&amp;nbsp;&amp;nbsp; 30,565 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;text/css:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 103,482 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;~headers:&amp;nbsp;&amp;nbsp;&amp;nbsp; 15,093 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;image/jpeg:&amp;nbsp;&amp;nbsp;&amp;nbsp; 13,634 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;text/html:&amp;nbsp;&amp;nbsp;&amp;nbsp; 72,976 &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;application/x-javascript:&amp;nbsp;&amp;nbsp;&amp;nbsp; 536,919&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Japan / Northern Europe (DSL)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Round trip cost: 6.45s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 14.45s&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px; BORDER-TOP-STYLE: none"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Round trip cost: 5.85s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 31.85s&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;China (DSL)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Round trip cost: 19.35s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P style="TEXT-ALIGN: justify"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 27.35s&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #999999 1pt solid; PADDING-LEFT: 4px; PADDING-RIGHT: 4px"&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Round trip cost: 17.55s &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Elapsed Time:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 43.55s&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;
&lt;H1&gt;References &lt;/H1&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=80a1b6e6-829e-49b7-8c02-333d9c148e69&amp;amp;DisplayLang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=80a1b6e6-829e-49b7-8c02-333d9c148e69&amp;amp;DisplayLang=en"&gt;IIS 6.0 Resource Guide&lt;/A&gt;: | &lt;BR&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=80a1b6e6-829e-49b7-8c02-333d9c148e69&amp;amp;DisplayLang=en &lt;/A&gt;
&lt;P&gt;&lt;A href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032270805&amp;amp;EventCategory=3&amp;amp;culture=en-US&amp;amp;CountryCode=US" mce_href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032270805&amp;amp;EventCategory=3&amp;amp;culture=en-US&amp;amp;CountryCode=US"&gt;Using Granular Compression in IIS 6.0 Webcast&lt;/A&gt;: http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032270805&amp;amp;EventCategory=3&amp;amp;culture=en-US&amp;amp;CountryCode=US &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/c63788cc-70b4-4a44-a9a3-329fa8fb3afb.mspx?mfr=true" mce_href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/c63788cc-70b4-4a44-a9a3-329fa8fb3afb.mspx?mfr=true"&gt;Metabase Property Reference (IIS 6.0)&lt;/A&gt; &lt;BR&gt;http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/c63788cc-70b4-4a44-a9a3-329fa8fb3afb.mspx?mfr=true &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/25d2170b-09c0-45fd-8da4-898cf9a7d568.mspx?mfr=true" mce_href="http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/25d2170b-09c0-45fd-8da4-898cf9a7d568.mspx?mfr=true"&gt;Using HTTP Compression for Faster Downloads (IIS 6.0)&lt;/A&gt; &lt;BR&gt;http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/25d2170b-09c0-45fd-8da4-898cf9a7d568.mspx?mfr=true &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/wbaer/archive/2008/01/30/http-compression-internet-information-services-6-0-and-sharepoint-products-and-technologies.aspx" mce_href="http://blogs.technet.com/wbaer/archive/2008/01/30/http-compression-internet-information-services-6-0-and-sharepoint-products-and-technologies.aspx"&gt;HTTP Compression, Internet Information Services 6.0, and SharePoint Products and Technologies&lt;/A&gt; &lt;BR&gt;http://blogs.technet.com/wbaer/archive/2008/01/30/http-compression-internet-information-services-6-0-and-sharepoint-products-and-technologies.aspx&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9704297" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author></entry><entry><title>ACL Limitations</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2009/06/06/acl-limitations.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2009/06/06/acl-limitations.aspx</id><published>2009-06-07T00:50:00Z</published><updated>2009-06-07T00:50:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 6pt" class=PadderBetweenControlandBody&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;FONT size=1 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;FONT color=#17365d size=5 face=Calibri&gt;The Problem&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Before talking about SharePoint, it is necessary to talk about the Windows operating system. Security authorization is based on Access Control Lists, or ACLs. An ACL is a list of access control entries (ACE). Each ACE identifies a security principal; such as a user or AD group, and the access rights allowed, denied, or audited for that security principal. The original designers of the Windows OS set a maximum size of 64K bytes for ACLs, which at the time seemed much more that would be needed. &lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;Operating System ACLs&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;An obvious question is how many users or AD groups can an ACL contain? The answer is, “It depends”. Since an ACL is composed of ACEs, the question becomes “How many ACEs can an ACL contain”? An ACE is a variable length structure. The variable part is the user or group’s security ID, or SID. The security identifier (SID) structure is a variable-length structure used to uniquely identify users or groups. The variability is driven by the domain topology in which the SID was created and assigned. A deeply nested forest domain structure will result in longer SIDs than a flat domain structure for example. Given this variability, the commonly heard numbers of ACEs in an ACL range from 1,000 to 2,000.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;SharePoint ACLs&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Up to this point, we have been talking about operating system ACLs. These types of ACLs can impact search crawling (discussed later), but not authorization within SharePoint itself. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;SharePoint has its own type of ACL it uses for authorization within SharePoint. SharePoint uses its ACLs to make access decisions; as well as, UI trimming decisions. SharePoint ACEs are optimized for SharePoint’s use cases; hence the format is simpler than operation system ACEs. In SharePoint, every user or AD group explicitly added to a site collection gets an entry in the site collection’s UserInfo table, is assigned a principal ID (PID), and gets an entry in the Perms table. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;The Perms table contains SharePoint’s ACLs, which are composed of SharePoint ACEs. A SharePoint ACE consists of the PID, and an 8 byte &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/dd304243(PROT.13).aspx"&gt;&lt;FONT size=3&gt;permissions mask&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#000000 size=3&gt;. So if inheritance is NOT broken, every user or NT group given access to a site collection has one row in the UserInfo table and one row in the Perms table. If a user which receives access indirectly through a NT group accesses the site, a row is added to the UserInfo table to contain that user’s display name, email address, and depending upon the operations that user performs on the site, a copy of their operating system SID; but no new row is added to the Perms table since the original row for the user’s group is sufficient to define the SharePoint permissions for that user.&lt;/FONT&gt;&lt;/P&gt;
&lt;H1 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=5&gt;The Crawl ACL Translation Problem&lt;/FONT&gt;&lt;/H1&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;The SharePoint search crawler keeps a copy of an object’s ACL in the search database to enable security trimming at search query time. To keep things simple and efficient for query processing, the search crawler translates SharePoint ACLs into operating system ACLs when building the index. Herein lays a problem. If the translated SharePoint ACL generates an operating system ACL larger than 64K, the search crawl throws an error, “parameter is incorrect”. If this error occurs at the site collection level, none of that site collection’s content will be indexed. This results in a situation in which the site collection itself works fine, but none of the site collection content can be searched.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;How Can ACLs &amp;gt; 64K Happen?&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;One way is to explicitly add enough individual users or AD groups to a site collection’s membership so that the mapping of the SharePoint ACL to operating system ACL during search crawling results in an operating system ACL greater than 64K. The first section of this post says this will happen between 1,000 and 2,000 unique users or AD groups, depending upon the size of each user or group’s SID. While unlikely, this is a possibility.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;The other, more likely way, is through broken permission inheritance within a site collection.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;What’s Wrong with Broken Inheritance?&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Let’s walk through a common scenario. A site collection is created for a large community of users; for example, a sales and marketing group with 5,000 members. Using best practice, we create a Sales and Marketing AD group, add the 5,000 users either directly or by nesting already existing AD groups. We then grant this AD group access to the site collection. The end result is one row in the UserInfo table and one row in the Perms table. Both the SharePoint ACL and mapped operating system ACL are less than 100 bytes long. Life is good; search indexing is happy and efficient.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;We then start loading sales and marketing documents into an array of subsites and document libraries. It becomes apparent one subsite is for marketing research. We only want 25 people to have access. What do we do? We break inheritance with the site collection and give those 25 people explicit access to the marketing research subsite. We now have at least 25 rows in the UserInfo table, but more importantly, 25 additional rows in the Perms table.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Let’s say this scenario repeats itself for subsites divided by product line and country/region; since it is important to keep product strategy restricted. Maybe we break inheritance for 10 other subsites of 25 users each.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The net result is an additional 250 rows in the Perms table.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Now comes the killer scenario. We add another AD group to site collection member ship which includes all full time employees (FTEs); containing a total of 30,000 members, either directly or through nested AD group membership. This group has read access to all sales and marketing content except the previously mentioned subsites with broken inheritance. This action by itself only adds one more row to the Perms table, which is not a problem; however, the plot thickens…&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;It is determined that certain FTEs in manufacturing and other support organizations need contributor access to specific documents scattered throughout the sales and marketing site collection. One-by-one, inheritance is broken on specific documents, and individual FTE users are granted contributor access to just those documents.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Each time this happens, rows are added to the Perms table. Over time, perhaps 5 unique FTE users are granted broken inheritance access to 300 different individual documents, adding 1,500 rows to the Perms table. Broken inheritance has become a growing cancer.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Eventually the Perms table reaches 1,800 rows. The Perm row for the site collection itself now contains 1,800+ ACEs. The incremental crawl that night starts throwing “parameter is incorrect” errors while crawling the site collection. Why? Because the operating system ACL the search crawling is trying to generate from the 2,000+ ACEs in the site collection Perms table exceeds the 64K ACL max size.&lt;/FONT&gt;&lt;/P&gt;
&lt;H1 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=5&gt;What Can You Do To Protect Yourself?&lt;/FONT&gt;&lt;/H1&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;Plan ahead when designing the information architecture (IA). Besides the number of AD groups and users explicitly granted membership in your site collections, consider what would have if you need to start breaking inheritance for granular access control at the list, library, or individual document level. Several customers have already hit problem. &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;I know of one major manufacturer whose Extranet supply chain site is based on one site collection. As more-and-more broken inheritance was applied to individual documents to keep each supplier’s information private to that supplier, the site collection has been unsearchable.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT color=#000000 size=3&gt;The only after-the-fact solution is painful refactoring of the site collection structure to more granularly designed site collections, whose usage is carefully aligned with the intended user communities.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT color=#000000 size=3&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9703098" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author></entry><entry><title>Office Server Web Service Authorization</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2009/04/12/office-server-web-service-authorization.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2009/04/12/office-server-web-service-authorization.aspx</id><published>2009-04-12T13:22:00Z</published><updated>2009-04-12T13:22:00Z</updated><content type="html">&lt;H1 style="MARGIN: 24pt 0in 0pt"&gt;&lt;FONT color=#365f91 size=5 face=Cambria&gt;Office Server Web Service Authorization&lt;/FONT&gt;&lt;/H1&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;I recently encountered a mystery&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;. I was testing a newly written utility that called the object model method &lt;B style="mso-bidi-font-weight: normal"&gt;Content.ContentSources&lt;/B&gt; to get a list of the search content sources. The utility functioned perfectly on my single server virtual development farm. When it came time to deploy to a medium farm, the utility was installed on the Central Administration server, which was separate from the Index server. The utility stopped working! (This is why you should always test in a multiple server environment). Now I had to figure out what was causing the failure.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The root cause was &lt;B style="mso-bidi-font-weight: normal"&gt;Office Server Web Service&lt;/B&gt; security. When the utility ran on a single server, SharePoint automatically made direct object model calls (known as short-circuiting web service calls, to optimize performance), so the &lt;B style="mso-bidi-font-weight: normal"&gt;SearchAdmin.asmx&lt;/B&gt; web service was not called. When the utility ran on a separate server, SharePoint under-the-covers converted the object model call to a web service call to the Index server. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT color=#4f81bd size=4 face=Cambria&gt;Problem 1: SSL Failure&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;The first problem was quickly discovered in the &lt;B style="mso-bidi-font-weight: normal"&gt;Application Event Log&lt;/B&gt;. There was an SSL failure reported. The Office Server Web Service by default uses SSL to secure intra-farm communications. A search of KB articles found &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://support.microsoft.com/?id=962928" mce_href="http://support.microsoft.com/?id=962928"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;KB962928&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt; (&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://support.microsoft.com/?id=962928" mce_href="http://support.microsoft.com/?id=962928"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3 face=Calibri&gt;http://support.microsoft.com/?id=962928&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;). This article matched my scenario. The &lt;B style="mso-bidi-font-weight: normal"&gt;.NET Framework 3.5 SP1&lt;/B&gt; had just been installed on the farm. This installation can corrupt the SSL certificate used by the &lt;B style="mso-bidi-font-weight: normal"&gt;Office Server Web Service&lt;/B&gt;. You can refer to the KB article for details. In summary the fix is to run &lt;B style="mso-bidi-font-weight: normal"&gt;SelfSSL.exe&lt;/B&gt; found in the &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=56FC92EE-A71A-4C73-B628-ADE629C89499" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=56FC92EE-A71A-4C73-B628-ADE629C89499"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;IIS 6.0 Resource Kit&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;. This must be done on all servers in the farm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To run &lt;B style="mso-bidi-font-weight: normal"&gt;SelfSSL.exe&lt;/B&gt; you need to know the Office Server Web Service identifier, which you can find in the &lt;B style="mso-bidi-font-weight: normal"&gt;IIS Manager&lt;/B&gt; MMC. It is 1720207907, as seen in the following picture.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 511px; HEIGHT: 246px" title=cdwp1 alt=cdwp1 src="http://blogs.msdn.com/photos/jimmiet/images/9546294/original.aspx" width=511 height=246 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9546294/original.aspx"&gt; &lt;/A&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Run the command as explained in the KB article on every farm server, using the correct Identifier value. A sample command session follows:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;C:\Program Files\IIS Resources\SelfSSL&amp;gt;&lt;B style="mso-bidi-font-weight: normal"&gt;net stop osearch&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;The Office SharePoint Server Search service is stopping.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;The Office SharePoint Server Search service was stopped successfully.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;C:\Program Files\IIS Resources\SelfSSL&amp;gt;&lt;B style="mso-bidi-font-weight: normal"&gt;selfssl /s:1720207907 /v:1000&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Microsoft (R) SelfSSL Version 1.0&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Copyright (C) 2003 Microsoft Corporation. All rights reserved.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Do you want to replace the SSL settings for site 1720207907 (Y/N)?&lt;B style="mso-bidi-font-weight: normal"&gt;y&lt;/B&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;The self signed certificate was successfully assigned to site 1720207907.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;C:\Program Files\IIS Resources\SelfSSL&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT color=#4f81bd size=4 face=Cambria&gt;Problem 2: Connection Refused&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Unfortunately, the next attempt at testing the utility also failed. This time the Application Event Log on the Index server had an entry 1314, from &lt;B style="mso-bidi-font-weight: normal"&gt;ASP.NET&lt;/B&gt;. The web service call was not even getting to SharePoint. It was being refused by the ASP.NET handler in IIS. (I highly recommend reading &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://technet.microsoft.com/en-us/magazine/2008.12.insidesharepoint.aspx" mce_href="http://technet.microsoft.com/en-us/magazine/2008.12.insidesharepoint.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Inside SharePoint Enterprise Project Management with SharePoint&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;. This article goes into great detail on how SharePoint web service authentication/authorization works.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 540px; HEIGHT: 358px" title=cdwp1 alt=cdwp1 src="http://blogs.msdn.com/photos/jimmiet/images/9546296/original.aspx" width=540 height=358 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9546296/original.aspx"&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;There is a wealth of information in the event description. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Notice the message says “URL authorization failed”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We can also see the requested URL was “&lt;B style="mso-bidi-font-weight: normal"&gt;/SharedServices1/Search/SearchAdmin.asmx&lt;/B&gt;”, and the requesting user identity was “&lt;B style="mso-bidi-font-weight: normal"&gt;LITWAREINC\Administrator&lt;/B&gt;”.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;But wait, the requesting user was a farm administrator. How could a farm administrator be denied access to a SharePoint URL? This sounds like a web.config issue, not a SharePoint issue.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event code: 4007 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event message: &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;URL authorization failed&lt;/SPAN&gt; for the request. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event time: 4/11/2009 4:28:24 PM &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event time (UTC): 4/11/2009 9:28:24 PM &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event ID: 418e2b58d47e4e0e81c213f24f64d642 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event sequence: 2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event occurrence: 1 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Event detail code: 0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Application information: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application domain: /LM/W3SVC/1720207907/root/SharedServices1-1-128839589029265968 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Trust level: Full &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application Virtual Path: /SharedServices1 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Application Path: C:\Program Files\Microsoft Office Servers\12.0\WebServices\Shared\ &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Machine name: MOSS &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Process information: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Process ID: 4448 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Process name: w3wp.exe &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Account name: LITWAREINC\sspservice &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;Request information: &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Request URL: https://moss:56738/SharedServices1/Search/SearchAdmin.asmx &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Request path: &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;/SharedServices1/Search/SearchAdmin.asmx&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;User host address: 192.168.150.2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;User: &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;LITWAREINC\Administrator&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Is authenticated: True &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Authentication Type: Negotiate &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Thread account name: LITWAREINC\sspservice &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The &lt;B style="mso-bidi-font-weight: normal"&gt;web.config&lt;/B&gt; file on the Index server is listed below. Unimportant sections have been removed for brevity. The key lines are the authorizations. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The first authorization, for the root level, looks fine. &lt;B style="mso-bidi-font-weight: normal"&gt;WSS_ADMIN_WPG&lt;/B&gt; membership includes all farm administrators including the requesting account “LITWAREINC\Administrator”, so this is not the problem.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 528px; HEIGHT: 227px" title=cdwp1 alt=cdwp1 src="http://blogs.msdn.com/photos/jimmiet/images/9426590/original.aspx" width=528 height=227 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426590/original.aspx"&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The second authorization for the specific location “&lt;B style="mso-bidi-font-weight: normal"&gt;SharedServices1&lt;/B&gt;” looks more interesting. This authorization only lists 2 accounts and no groups. Neither account is “LITWAREINC\Administrator”, which is why ASP.NET denied access to the web service call.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;lt;?&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;xml&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;version&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;1.0&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;encoding&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;utf-8&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;?&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;configuration&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;configSections&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-tab-count: 2"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;. . . &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;configSections&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;system.web&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;authorization&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;allow&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;roles&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;"&lt;SPAN style="COLOR: blue"&gt;.\WSS_ADMIN_WPG&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;deny&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;users&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;*&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;authorization&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;webServices&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;. . .&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;webServices&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;system.web&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;location&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;path&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;SharedServices1&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;inheritInChildApplications&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;microsoft.office.server&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;. . .&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;microsoft.office.server&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;system.web&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;authorization&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;&amp;lt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;allow&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;users&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; BACKGROUND: yellow; FONT-SIZE: 10pt; mso-no-proof: yes; mso-highlight: yellow"&gt;"&lt;SPAN style="COLOR: blue"&gt;litwareinc\SPAppPool,litwareinc\SPFarmAdmin&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;authorization&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;system.web&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;location&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;configuration&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 10pt; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So now the question is where do these account names come from? A little digging through documentation and blogs revealed the answer. These are the application pool accounts for SharePoint web application sites. Everytime you create a new application pool through Central Administration when creating or extending a web application, the application pool identity is added to this list. In this farm there are 2 application pool identities, &lt;B style="mso-bidi-font-weight: normal"&gt;SPAppPool&lt;/B&gt; (for non-administrative application pools) and &lt;B style="mso-bidi-font-weight: normal"&gt;SPFarmAdmin&lt;/B&gt; (for Central Admin and SSP application pools). It is important to notice that since &lt;B style="mso-bidi-font-weight: normal"&gt;litwareinc\administrator&lt;/B&gt; is not used as an application pool identity, this account does not appear in the authorized users list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Now that we know what the problem is, how do we get &lt;B style="mso-bidi-font-weight: normal"&gt;litwareinc\administrator&lt;/B&gt; into the authorized list? We cannot directly edit web.config. Other than supportability questions, SharePoint automatically rewrites this list every minute. Even it we manually changed web.config, SharePoint would remove our change.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;Since the utility had to run as &lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;litwareinc\administrator&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="mso-no-proof: yes"&gt;, the only way to make this happen was to create a dummy web application through Central Administration, specifying to created a new application pool with the identity &lt;B style="mso-bidi-font-weight: normal"&gt;litwareinc\administrator&lt;/B&gt;. Since we are not really using this application pool, we can stop the dummy web application and the application pool to minimize the performance impact. After this, SharePoint added &lt;B style="mso-bidi-font-weight: normal"&gt;litwareinc\administrator&lt;/B&gt; to the web.config authorized list.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-no-proof: yes"&gt;The utility now works perfectly from any server in the farm.&lt;/SPAN&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt; The takeaway of this story is if you are writing code that has to call the Office Server Web Service, impersonate a SharePoint application pool account when making the web service call, realizing some object model method calls are converted under-the-covers to web service calls depending upon which server in the farm your code is running on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9546306" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="Office Server Web Service Authorization" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Office+Server+Web+Service+Authorization/default.aspx" /></entry><entry><title>Content Deployment and CEWP Absolute URLs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2009/02/16/content-deployment-and-cewp-absolute-urls.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2009/02/16/content-deployment-and-cewp-absolute-urls.aspx</id><published>2009-02-17T01:15:00Z</published><updated>2009-02-17T01:15:00Z</updated><content type="html">&lt;H3&gt;Content Deployment and CEWP Absolute URLs&lt;/H3&gt;
&lt;P&gt;The Content Editor Web Part (CEWP) has a Rich Text Editor. This allows non-technical authors to generate custom content using a web part. This is a great feature for team collaboration sites, but some customers also use the CEWP on publishing site pages. Avoiding the discussion of web parts verses field controls in published pages, there are issues using the CEWP to create content on published pages.&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 599px; HEIGHT: 232px" title=cdwp1 alt=cdwp1 src="http://blogs.msdn.com/photos/jimmiet/images/9426590/original.aspx" width=599 height=232 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426590/original.aspx"&gt;&lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/$cewp1[4].jpg" mce_href="$cewp1[4].jpg"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;H4&gt;The Problem&lt;/H4&gt;
&lt;P&gt;A Rich Text Editor sounds like a great feature; however, there is a problem with content deployment, described by &lt;A href="http://andrewconnell.com/blog/archive/2008/12/24/Working-around-the-CEWPs-absolute-links.aspx" mce_href="http://andrewconnell.com/blog/archive/2008/12/24/Working-around-the-CEWPs-absolute-links.aspx"&gt;Andrew Connell&lt;/A&gt;. (There is a related problem for sites that can be accessed through multiple AAMs as described by &lt;A href="http://blogs.msdn.com/maximeb/archive/2008/12/23/fixing-absolute-urls-for-all-alternate-access-mappings-aam-of-content-editor-web-part-with-a-control-adapter.aspx" mce_href="http://blogs.msdn.com/maximeb/archive/2008/12/23/fixing-absolute-urls-for-all-alternate-access-mappings-aam-of-content-editor-web-part-with-a-control-adapter.aspx"&gt;Maxime Bombardier&lt;/A&gt;.) The basic problem is the Rich Text Editor forces all URLs to be absolute. If you look at the HTML generated by the above HTML editor, you will see:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/$cewp2[3].jpg" mce_href="$cewp2[3].jpg"&gt;&lt;/A&gt;&amp;nbsp;&lt;IMG style="WIDTH: 499px; HEIGHT: 87px" title=cewp2 alt=cewp2 src="http://blogs.msdn.com/photos/jimmiet/images/9426601/original.aspx" width=499 height=87 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426601/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;As Andrew Connell points out: &lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 12pt 0.5in; BACKGROUND: #d9d9d9; mso-background-themecolor: background1; mso-background-themeshade: 217" class=MsoNormal&gt;If you have a link to &lt;A href="http://staging.adventureworkstravel.com/pages/contactus.aspx" mce_href="http://staging.adventureworkstravel.com/pages/contactus.aspx"&gt;http://staging.adventureworkstravel.com/pages/contactus.aspx&lt;/A&gt; in a CEWP on a page and then do content deployment to &lt;A href="http://www.adventureworkstravel.com/" mce_href="http://www.adventureworkstravel.com"&gt;http://www.adventureworkstravel.com&lt;/A&gt;, the link will be pointing back to the staging site (which will... or should... be inaccessible).&lt;/P&gt;
&lt;P&gt;The absolute URL is not fixed up automatically during content deployment, so the target page will still point to the original URL location, not a location within the target farm. This means the absolute URL must be corrected in the target farm itself. In the preceding example, we want the target farm HTML to be a relative URL that points to locations within the target farm:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/$cewp3[3].jpg" mce_href="$cewp3[3].jpg"&gt;&lt;/A&gt;&lt;IMG style="WIDTH: 503px; HEIGHT: 88px" title=cewp3 alt=cewp3 src="http://blogs.msdn.com/photos/jimmiet/images/9426604/original.aspx" width=503 height=88 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426604/original.aspx"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Maxime Bombardier’s control adapter strategy can be leveraged. With slight modification, Maxime’s code can be modified to convert absolute URLs to relative URLs, so they effectively point to the appropriate location in the target farm. How do we convert an absolute URL to a relative URL? Looking at the above example, we need to strip out the host portion of the URL; that is, we need to remove “http://moss.litwareinc.com”&lt;/P&gt;
&lt;H4&gt;The Solution&lt;/H4&gt;
&lt;P&gt;The difference between the content deployment fix we need, and Maxime’s AAM fix, is what gets stripped. Maxime’s AAM fix strips the AAM host names of the &lt;U&gt;current&lt;/U&gt; web application. The content deployment fix needs to strip the AAM host names of the &lt;U&gt;authoring&lt;/U&gt; web application, which the target farm does not know. In other words, we need a way to tell the control adapter which host names to strip. The solution is to make the host names configurable. This solution uses the &lt;A href="http://www.codeplex.com/SPConfigStore" mce_href="http://www.codeplex.com/SPConfigStore"&gt;SharePoint Config Store&lt;/A&gt; solution developed by Chris O'Brien. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/$cewp4[3].jpg" mce_href="$cewp4[3].jpg"&gt;&lt;/A&gt;&lt;IMG style="WIDTH: 472px; HEIGHT: 90px" title=cewp4 alt=cewp4 src="http://blogs.msdn.com/photos/jimmiet/images/9426611/original.aspx" width=472 height=90 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426611/original.aspx"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So, the primary difference between this control adapter and Maxime’s control adapter is the &lt;B&gt;GetAlternativeUrls&lt;/B&gt; method. This method’s logic is changed to read AAMs from the Config store list, rather than using the object module to get the AAMs from the current web application.&lt;/P&gt;
&lt;H4&gt;The Code&lt;/H4&gt;
&lt;P&gt;&lt;A title=_Toc221014204 name=_Toc221014204&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; COB.SharePoint.Utilities; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.Collections.Generic; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.IO; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.Text; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.Web; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.Web.UI; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; System.Web.UI.Adapters; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; Microsoft.SharePoint; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;using&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; Microsoft.SharePoint.Administration; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;namespace&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt; Litware.SharePoint.WebPartPages.CewpControlAdapter &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;ContentEditorWebPartAdapter&lt;/SPAN&gt; : ControlAdapter&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;protected&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;override&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; Render(System.Web.UI.HtmlTextWriter writer)&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{ &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;StringBuilder&lt;/SPAN&gt; sb = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;StringBuilder&lt;/SPAN&gt;();&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Allow the CEWP to render itself into a string that we provide&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;HtmlTextWriter htw = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; HtmlTextWriter(&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;StringWriter&lt;/SPAN&gt;(sb)); &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;base&lt;/SPAN&gt;.Render(htw);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; output = sb.ToString();&amp;nbsp; &lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Wrap the adatper rendering logic in a try-catch so any error&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// in the adapter won't prevent the CEWP from rendering.&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;try&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Now we post-process the CEWP rendering to convert absolute URLs to relative URLs&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] alternativeUrls = GetAlternativeUrls();&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (alternativeUrls != &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;foreach&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; replaceableUrl &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; alternativeUrls)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Do a simple String.Replace() of the alternativeUrls to generate a relative url&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;searchFor = replaceableUrl;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;replaceWith = &lt;SPAN style="COLOR: #a31515"&gt;"/"&lt;/SPAN&gt;;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;output = output.Replace(searchFor, replaceWith);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;catch&lt;/SPAN&gt; (&lt;SPAN style="COLOR: #2b91af"&gt;Exception&lt;/SPAN&gt; ex)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// log exception here&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Finally, write the rendering to the page&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;writer.Write(output);&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;}&lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;private&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] GetAlternativeUrls() &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[] alternativeUrls = &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;;&amp;nbsp; &lt;BR&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;try&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;alernativeUrls = (&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;[])HttpContext.Current.Cache[&lt;SPAN style="COLOR: #a31515"&gt;"alternativeUrls"&lt;/SPAN&gt;];&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (alternativeUrls == &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; temp = &lt;SPAN style="COLOR: #2b91af"&gt;String&lt;/SPAN&gt;.Empty;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Get the URLs to be replaced from the config store&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;temp = ConfigStore.GetValue(&lt;SPAN style="COLOR: #a31515"&gt;"CEWP Adapter"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #a31515"&gt;"AAMs"&lt;/SPAN&gt;);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (&lt;SPAN style="COLOR: #2b91af"&gt;String&lt;/SPAN&gt;.IsNullOrEmpty(temp))&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;throw&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;ArgumentNullException&lt;/SPAN&gt;(&lt;SPAN style="COLOR: #a31515"&gt;"AAMs config store parameter is null or empty"&lt;/SPAN&gt;);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Split apart the config parameter using a semicolon separater value&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;char&lt;/SPAN&gt;[] separaters = { &lt;SPAN style="COLOR: #a31515"&gt;';'&lt;/SPAN&gt; };&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;alternativeUrls = temp.Split(separaters);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Validate the config value&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (alternativeUrls == &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt; || alternativeUrls.Length == 0)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;throw&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;ArgumentNullException&lt;/SPAN&gt;( &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: #a31515"&gt;"AAMs config store parameter is null or empty after split"&lt;/SPAN&gt;);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;for&lt;/SPAN&gt; (&lt;SPAN style="COLOR: blue"&gt;int&lt;/SPAN&gt; i = 0; i &amp;lt; alternativeUrls.Length; i++)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Ensure the URL is "/" terminated for consitent replacement behavior&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt; replaceableUrl = alternativeUrls[i];&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (!&lt;SPAN style="COLOR: blue"&gt;string&lt;/SPAN&gt;.IsNullOrEmpty(replaceableUrl) &amp;amp;&amp;amp; !replaceableUrl.EndsWith(&lt;SPAN style="COLOR: #a31515"&gt;"/"&lt;/SPAN&gt;))&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;alternativeUrls[i] += &lt;SPAN style="COLOR: #a31515"&gt;"/"&lt;/SPAN&gt;;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Sort, and then reverse the array&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// to put the longest; that is, the most specific&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// URLs first in the list&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;Array&lt;/SPAN&gt;.Sort(alternativeUrls);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #2b91af"&gt;Array&lt;/SPAN&gt;.Reverse(alternativeUrls);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// Cache for 5 minutes to allow for a somewhat quick refresh &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;// &lt;/SPAN&gt;if the configuration values are changed&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;HttpContext.Current.Cache.Add(&lt;SPAN style="COLOR: #a31515"&gt;"alternativeUrls"&lt;/SPAN&gt;,alternativeUrls, &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;, &lt;BR&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DateTime&lt;/SPAN&gt;.Now.AddMinutes(5), System.Web.Caching.Cache.NoSlidingExpiration, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.Web.Caching.CacheItemPriority.Normal, &lt;SPAN style="COLOR: blue"&gt;null&lt;/SPAN&gt;);&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;catch&lt;/SPAN&gt; (&lt;SPAN style="COLOR: #2b91af"&gt;Exception&lt;/SPAN&gt; ex)&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: green"&gt;// log exception here&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&amp;nbsp; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;return&lt;/SPAN&gt; alternativeUrls; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;} &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-no-proof: yes"&gt;}&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;Build the output assembly as strongly named, and then deploy it to the GAC on every WFE. A simple solution package (wsp file) can be created to automate the deployment to all WFEs. Creating a solution package is automatic if you create your project using the &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=7BF65B28-06E2-4E87-9BAD-086E32185E68&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=7BF65B28-06E2-4E87-9BAD-086E32185E68&amp;amp;displaylang=en"&gt;Visual Studio 2008 extensions for Windows SharePoint Services 3.0, v1.2&lt;/A&gt;.&lt;/P&gt;
&lt;H4&gt;Browser File&lt;/H4&gt;
&lt;P&gt;The control adapter is associated with the CEWP through browser file entries. The default browser file, &lt;B&gt;compat.browser&lt;/B&gt;, is in the &lt;B&gt;App_Browsers&lt;/B&gt; folder of each web application’s virtual directory. We don’t want to update this file; instead, we will create a separate file for our control adapter.&lt;/P&gt;
&lt;P&gt;Additional browser files can be added to the same directory; however, &lt;FONT color=#800000&gt;additional files will not be recognized by ASP.NET until compat.browser is recompiled. Recompilation is forced by opening compat.browser in a text editor like Notepad, making an innocuous change (e.g., add and then delete a space), and then saving the file&lt;/FONT&gt;.&lt;/P&gt;
&lt;P&gt;The customized browser file, &lt;B&gt;litware.browser&lt;/B&gt;, is created and placed in the &lt;B&gt;App_Browsers&lt;/B&gt; folder of every web application where the control adapter is to be enabled. Without this browser file, the control adapter is not called even though it may be installed in the GAC. The default compat.browser is then updated and saved to force a recompiled of the local application browser files as described in the preceding paragraph.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/ControlPanel/Blogs/$cewp5[3].jpg" mce_href="$cewp5[3].jpg"&gt;&lt;/A&gt;&lt;IMG style="WIDTH: 399px; HEIGHT: 190px" title=cewp5 alt=cewp5 src="http://blogs.msdn.com/photos/jimmiet/images/9426616/original.aspx" width=399 height=190 mce_src="http://blogs.msdn.com/photos/jimmiet/images/9426616/original.aspx"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Looking at the &lt;B&gt;litware.browser &lt;/B&gt;code, the entry &lt;B&gt;controlType&lt;/B&gt; attribute tells ASP.NET to associate this control adaptor with the CEWP. The &lt;B&gt;adapterType&lt;/B&gt; attribute has the control adapter type and assembly. The refID=”Default” attribute tells ASP.NET to apply the adapter to all browser types. &lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN-BOTTOM: 0pt; BACKGROUND: #f2f2f2; mso-background-themecolor: background1; mso-background-themeshade: 242; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;lt;?&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;xml&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;version&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;="1.0" &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;encoding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;="utf-8" ?&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;browsers&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;browser&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;refID&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;Default&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;controlAdapters&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;adapter&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;controlType&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;Microsoft.SharePoint.WebPartPages.ContentEditorWebPart&lt;/SPAN&gt;" &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: red; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;adapterType&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;"&lt;SPAN style="COLOR: blue"&gt;Litware.SharePoint.WebPartPages.CewpControlAdapter.ContentEditorWebPartAdapter, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Litware.SharePoint.WebPartPages.CewpControlAdapter, Version=1.0.0.0, Culture=neutral, &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PublicKeyToken=daf6fd1bbe0cfc20&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; /&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;controlAdapters&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;browser&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;gt; &lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: #a31515; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;browsers&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; COLOR: blue; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-no-proof: yes"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 9pt"&gt; &lt;/SPAN&gt;
&lt;P&gt;Note, App_Browser directory must be updated on every WFE in the target farm.&lt;/P&gt;
&lt;H4&gt;References&lt;/H4&gt;
&lt;P&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms228122(VS.80).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms228122(VS.80).aspx"&gt;&lt;U&gt;&lt;FONT color=#0000ff&gt;Browser Definition File Schema (browsers Element)&lt;/FONT&gt;&lt;/U&gt;&lt;/A&gt; &lt;BR&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms228049(VS.80).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms228049(VS.80).aspx"&gt;&lt;U&gt;&lt;FONT color=#0000ff&gt;Securing Browser Definition Files &lt;/FONT&gt;&lt;/U&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9426573" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /><category term="Content Deployment" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Content+Deployment/default.aspx" /></entry><entry><title>Why Bring Down the Entire Farm for Patches?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/07/31/why-bring-down-the-entire-farm-for-patches.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/07/31/why-bring-down-the-entire-farm-for-patches.aspx</id><published>2008-07-31T16:54:14Z</published><updated>2008-07-31T16:54:14Z</updated><content type="html">&lt;h1&gt;Why Bring Down the Entire Farm for Patches?
&lt;/h1&gt;&lt;p&gt;Many customers are surprised to learn they have to bring down their SharePoint farm just to apply a hotfix or service pack, and express frustration when told there is no other option.  Why is it necessary to stop the farm?
&lt;/p&gt;&lt;p&gt;Think of a SharePoint farm as a living organism. It has a nervous system and a heart. The farm isn't viable if either of these components is interrupted.
&lt;/p&gt;&lt;p&gt; The nervous system is a set of web services. All the servers in the farm are constantly chatting amongst themselves. What is the topic of the chatting? It is the farm health. The servers are constantly asking each other, "are you there and healthy?", or "do your registry settings match the configuration database, or has some human manually tried to adjust you?", or "can you respond to a search query?" These web services implement a self-healing, self-growing capability. For example, when you add a new web front end (WFE) to the farm, you don't have to manually add your custom features and solutions. The farm's nervous system recognizes that a new server has joined the farm organism, and automatically configures that WFE so it can function correctly in the farm community. If any server fails to respond appropriately to the web service nervous system conversations, because it does or does not have the same patches applied as the other servers in the farm, the farm organism could be thrown into disarray.
&lt;/p&gt;&lt;p&gt;The heart of the farm is the configuration database, supported by the SSP databases and content databases. These databases maintain the farm state (configuration, customizations, pages, user profiles, content, etc.).  The schema of these databases is tightly coupled to the configuration and content. Many hotfixes and patches must modify the database schema(s) to provide corrections and improvements. Because the databases are the heart of the farm, schema changes (open heart surgery) can only be performed by putting the patient to sleep when the changes are applied. Unfortunately, if the schema changes have to modify tables in the content databases, the result may be a long surgical procedure while thousands or even millions of rows of content data are updated.
&lt;/p&gt;&lt;p&gt;Agreed, putting a farm to sleep for surgery is not ideal, but is necessary.
&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8793328" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author></entry><entry><title>Office Web Service</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/07/03/office-web-service.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/07/03/office-web-service.aspx</id><published>2008-07-04T01:46:41Z</published><updated>2008-07-04T01:46:41Z</updated><content type="html">&lt;h1&gt;Office Web Service
&lt;/h1&gt;&lt;p&gt;The Office Services Web service is used by Office SharePoint Server 2007 as a communication channel between Web servers and application servers. This service uses the following ports:
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;TCP         56737
&lt;/li&gt;&lt;li&gt;TCP/SSL     56738
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Access to the web service methods is restricted to the farm administrator group, WSS_ADMIN_WPG.  None of the web service methods can be called from user code.
&lt;/p&gt;&lt;h2&gt;Web Services
&lt;/h2&gt;&lt;p&gt;Depending on features installed, the Office Server Web Services Web application exposes the following internal Web services, which are not available for calls from custom code:
&lt;/p&gt;&lt;div&gt;&lt;table style="border-collapse:collapse" border="0"&gt;&lt;colgroup&gt;&lt;col style="width:120px"/&gt;&lt;col style="width:266px"/&gt;&lt;col style="width:249px"/&gt;&lt;/colgroup&gt;&lt;tbody valign="top"&gt;&lt;tr&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  solid #a3a3a3 1.0pt; border-left:  solid #a3a3a3 1.0pt; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Friendly Name&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  solid #a3a3a3 1.0pt; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Location&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  solid #a3a3a3 1.0pt; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  solid #a3a3a3 1.0pt; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Search Web Service&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;SearchAdmin.asmx&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;Microsoft Office SharePoint Server 2007 Search Administration Web Service.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  solid #a3a3a3 1.0pt; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Search Application Web Service&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;/SSP/Search/SearchAdmin.asmx&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;Microsoft Office SharePoint Server 2007 Search Application Administration Web Service.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2" style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  solid #a3a3a3 1.0pt; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;strong&gt;Excel Service Soap&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;/SSP/ExcelCalculationServer/ExcelService.asmx&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="padding-top: 5px; padding-left: 5px; padding-bottom: 5px; padding-right: 5px; border-top:  none; border-left:  none; border-bottom:  solid #a3a3a3 1.0pt; border-right:  solid #a3a3a3 1.0pt"&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;Microsoft Office SharePoint Server 2007 Excel Services Application Web Service.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt; 
 &lt;/p&gt;&lt;p&gt;The object model automatically short circuits the web services, i.e. invokes the underlying functionality without invoking the web service, when the target server is also the client primarily for performance reasons. Hence, the web services are not used...
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;On a Basic deployment.
&lt;/li&gt;&lt;li&gt;When the administrative action is performed on a WFE that also happens to be the indexer.
&lt;/li&gt;&lt;/ul&gt;&lt;h3&gt;Global Web Service (SearchWebService)
&lt;/h3&gt;&lt;p&gt; Runs in the Office Server Web Services virtual server root application pool, i.e. an application pool that does not belong to any SSP. This GLOBAL application pool runs as NetworkService.
&lt;/p&gt;&lt;p&gt; It is used to retrieve low level computer configuration settings before any SSP is created, e.g. system drive info, verify path correctness, the computer's IP Address.
&lt;/p&gt;&lt;p&gt; It is also used to create/configure a propagation share. The web method that implements this functionality is special: It impersonates the WindowsIdentity making the request. That identity must be a local admin on the remote server (only local administrators can create/configure shares).
&lt;/p&gt;&lt;p&gt;Allowed access: WSS_ADMIN_WPG.
&lt;/p&gt;&lt;h3&gt; SSP (Application) Web Service (SearchApplicationWebService)
&lt;/h3&gt;&lt;p&gt; Primarily used for SSP administration of Search configuration.
&lt;/p&gt;&lt;p&gt; A web service associated with a specific SSP on a specific server (indexer and/or query server).
&lt;/p&gt;&lt;p&gt;Runs as the SSP web service credentials (the credentials that you enter in the SSP creation/details page).
&lt;/p&gt;&lt;p&gt; The SSP web service account can read/write from/to the SSP database and the Search database (only the ones that belong to its SSP).
&lt;/p&gt;&lt;p&gt;Allowed access: WSS_ADMIN_WPG and the SSP administration application pool identity.
&lt;/p&gt;&lt;h2&gt;Security 
&lt;/h2&gt;&lt;h3&gt;InterServer Communications
&lt;/h3&gt;&lt;p&gt;Network traffic can be secured with either SSL on port 56738, or with IPSec on either port.
&lt;/p&gt;&lt;p&gt;IPSec is an IP level feature, which means all traffic on the configured ports is protected; whereas, SSL is an application level protection mechanism. 
&lt;/p&gt;&lt;p&gt;IPSec has the advantage of limiting which pairs of servers can communicate, by configuring the IP addresses. This feature can significantly lock down a server farm.
&lt;/p&gt;&lt;h3&gt;Service Accounts Used
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Search service account
&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;It is a db_owner in ALL SSP databases.
&lt;/li&gt;&lt;li&gt;It is a db_owner in ALL Search databases.
&lt;/li&gt;&lt;li&gt;It has READ ONLY access to all the content in ALL web applications via a policy.
&lt;/li&gt;&lt;li&gt;It has read/write access to the propagation share on Query servers.
&lt;/li&gt;&lt;li&gt;It has read/write access to the Search registry hive.
&lt;/li&gt;&lt;li&gt;It has read/write access to the Search index location.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;SSP administration site application pool identity
&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;This account is determined by the web application that you select when you create the SSP. 
&lt;/li&gt;&lt;li&gt;It has read/write access to the SSP database and the Search database.
&lt;/li&gt;&lt;li&gt;This account has full control over the Search service via its COM interfaces.
&lt;/li&gt;&lt;li&gt;It has read/write access to the Search registry hive.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Global web service account 
&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;This is the GLOBAL application pool account of the Office Server Web Services, i.e. an application pool that does not belong to any SSP.
&lt;/li&gt;&lt;li&gt;It is always set to NetworkService.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;SSP (Application) web service
&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The application pool account of an SSP web service (the credentials entered in the SSP creation/details page).
&lt;/li&gt;&lt;li&gt;This account has read/write access to the SSP database and to the Search database of an SSP.
&lt;/li&gt;&lt;li&gt;This account has full control over the Search service via its COM interfaces.
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;It has read/write access to the Search registry hive.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8685947" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /></entry><entry><title>Information Management Policies – Expiration </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/07/03/information-management-policies-expiration.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/07/03/information-management-policies-expiration.aspx</id><published>2008-07-04T00:51:00Z</published><updated>2008-07-04T00:51:00Z</updated><content type="html">&lt;H1&gt;&lt;SPAN style="FONT-SIZE: 14pt; COLOR: #365f91"&gt;Information Management Policies – Expiration &lt;/SPAN&gt;&lt;/H1&gt;
&lt;P&gt;The question is, when an information management expiration policy is defined, is the expiration period applied immediately or at some future time? If the answer is, at some future time, exactly what is that time, and can you set it? &lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 14pt"&gt;&lt;STRONG&gt;Contrived Example &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;To take a concrete example, create a document library. &lt;/P&gt;
&lt;P&gt;Next, modify the default view allow us to see what is happening. Go to &lt;STRONG&gt;Settings&lt;/STRONG&gt;, &lt;STRONG&gt;Views&lt;/STRONG&gt;, and click on &lt;STRONG&gt;All Documents&lt;/STRONG&gt;. Add the columns &lt;STRONG&gt;Created&lt;/STRONG&gt;, &lt;STRONG&gt;Exempt from Policy&lt;/STRONG&gt;, and &lt;STRONG&gt;Expiration Date&lt;/STRONG&gt; to the view. Press the &lt;STRONG&gt;OK&lt;/STRONG&gt; button to save the view changes. &lt;/P&gt;
&lt;P&gt;Now Go to &lt;STRONG&gt;Settings&lt;/STRONG&gt;, &lt;STRONG&gt;Document Library Settings&lt;/STRONG&gt;, and click on &lt;STRONG&gt;Information management policy settings&lt;/STRONG&gt;. &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Select &lt;STRONG&gt;Define a policy&lt;/STRONG&gt; and press the &lt;STRONG&gt;OK&lt;/STRONG&gt; button. &lt;/LI&gt;
&lt;LI&gt;Check &lt;STRONG&gt;Enable Expiration&lt;/STRONG&gt; &lt;/LI&gt;
&lt;LI&gt;Under retention period, select &lt;STRONG&gt;A time period based on the item's properties&lt;/STRONG&gt;. &lt;/LI&gt;
&lt;LI&gt;Select &lt;STRONG&gt;Created + 30 days&lt;/STRONG&gt;. &lt;/LI&gt;
&lt;LI&gt;Under &lt;STRONG&gt;When the item expires&lt;/STRONG&gt;, select &lt;STRONG&gt;Perform this action&lt;/STRONG&gt;, and &lt;STRONG&gt;Delete&lt;/STRONG&gt;. &lt;/LI&gt;
&lt;LI&gt;Press the &lt;STRONG&gt;OK&lt;/STRONG&gt; button. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Return to the library, &lt;STRONG&gt;All Documents&lt;/STRONG&gt; view. Upload several documents. The uploaded documents will have an &lt;EM&gt;Expiration Date&lt;/EM&gt; of the current date plus 30 days as expected. &lt;/P&gt;
&lt;P&gt;Go back to the &lt;STRONG&gt;Settings&lt;/STRONG&gt;, and change the retention period to &lt;STRONG&gt;Created + 60 days&lt;/STRONG&gt;. Upload some more documents. The newly uploaded documents correctly show an expiration date of the current date plus 60 days, but the previously uploaded documents still have an expiration date of the current date plus 30 days. It appears there is an inconsistency. &lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 14pt"&gt;&lt;STRONG&gt;Information Policy Jobs &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;The key to this inconsistency is the &lt;STRONG&gt;Information Management Policy&lt;/STRONG&gt; timer job. This job runs once daily by default. It iterates all the web applications/site collections/sites/lists in the farm, looking for information policy changes. When a policy change is found, all affected item's metadata is updated; consequently, the expiration dates of the library documents in our contrived example are not updated until this job runs. When this job eventually runs, the inconsistency will be corrected. &lt;/P&gt;
&lt;P&gt;There is an stsadm command to change the schedule of this job, &lt;A href="http://technet.microsoft.com/en-us/library/cc262865.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc262865.aspx"&gt;&lt;STRONG&gt;SetPolicySchedule&lt;/STRONG&gt;&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 8pt; FONT-FAMILY: Verdana"&gt;&lt;STRONG&gt;stsadm -o setpolicyschedule&amp;nbsp;&amp;nbsp;&amp;nbsp;-schedule &amp;lt;recurrence string&amp;gt;&lt;/STRONG&gt; &lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV style="MARGIN-LEFT: 3pt"&gt;
&lt;TABLE class="" style="BACKGROUND: white; BORDER-COLLAPSE: collapse" border=0&gt;
&lt;COLGROUP&gt;
&lt;COL style="WIDTH: 79px"&gt;
&lt;COL style="WIDTH: 260px"&gt;
&lt;COL style="WIDTH: 76px"&gt;
&lt;COL style="WIDTH: 223px"&gt;&lt;/COLGROUP&gt;
&lt;TBODY vAlign=top&gt;
&lt;TR&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: #d5d5d3 0.75pt solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #d5d5d3 0.75pt solid; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Parameter&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: #d5d5d3 0.75pt solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Value&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: #d5d5d3 0.75pt solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Required?&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: #d5d5d3 0.75pt solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Description&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: medium none; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #d5d5d3 0.75pt solid; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;&lt;EM&gt;schedule&lt;/EM&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: medium none; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;A valid Windows SharePoint Services Timer service (SPTimer) schedule in the form of any one of the following schedules: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;"Every 5 minutes between 0 and 59" &lt;/LI&gt;
&lt;LI&gt;"Hourly between 0 and 59" &lt;/LI&gt;
&lt;LI&gt;"Daily at 15:00:00" &lt;/LI&gt;
&lt;LI&gt;"Weekly between Fri 22:00:00 and Sun 06:00:00" &lt;/LI&gt;
&lt;LI&gt;"Monthly at 15 15:00:00" &lt;/LI&gt;
&lt;LI&gt;"Yearly at Jan 1 15:00:00" &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;An acceptable default value is "once every 24 hours."&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: medium none; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Yes&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 0.25pt solid; PADDING-RIGHT: 5px; BORDER-TOP: medium none; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: medium none; PADDING-TOP: 5px; BORDER-BOTTOM: #d5d5d3 0.75pt solid"&gt;
&lt;P&gt;Sets how often the policy framework processes changes to a policy. The value should be a properly formatted SPTimer argument.&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;
&lt;P&gt;Since this job could affect performance in a large farm, be careful when scheduling it. Daily is probably sufficient. It is also a good idea to have it run about an hour before &lt;STRONG&gt;Expiration Policy&lt;/STRONG&gt; job, so the &lt;STRONG&gt;Expiration Policy &lt;/STRONG&gt;job will find up-to-date item metadata when it applies the expiration policy to items. &lt;/P&gt;
&lt;P&gt;You can find current information on both the &lt;STRONG&gt;Information Management Policy&lt;/STRONG&gt; and &lt;STRONG&gt;Expiration Policy&lt;/STRONG&gt; jobs by going to &lt;STRONG&gt;Central Administration &amp;gt; Operations &amp;gt; Timer Job Definitions&lt;/STRONG&gt;. This will show you the frequency and last run time of each job, but not the complete schedule. &lt;/P&gt;
&lt;P&gt;There is currently no stsadm command to change the &lt;STRONG&gt;Expiration Policy &lt;/STRONG&gt;job; however, &lt;A href="http://blogs.msdn.com/mattlind/archive/2007/06/05/force-execution-of-expiration-policies-in-moss.aspx" mce_href="http://blogs.msdn.com/mattlind/archive/2007/06/05/force-execution-of-expiration-policies-in-moss.aspx"&gt;Mattias Lindberg&lt;/A&gt; has a code sample to for the job to run using the object model. &lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 14pt"&gt;&lt;STRONG&gt;Summary &lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Item metadata is not updated for policy changes until the &lt;STRONG&gt;Information Management Policy &lt;/STRONG&gt;job executes. &lt;/LI&gt;
&lt;LI&gt;The &lt;STRONG&gt;Information Management Policy &lt;/STRONG&gt;job schedule can be set with &lt;STRONG&gt;stsadm –o setpolicyschedule&lt;/STRONG&gt;. &lt;/LI&gt;
&lt;LI&gt;The &lt;STRONG&gt;Information Management Policy &lt;/STRONG&gt;job should be scheduled to execute shortly before the &lt;STRONG&gt;Expiration Policy &lt;/STRONG&gt;job. &lt;/LI&gt;
&lt;LI&gt;The retention policy is not applied to items until the &lt;STRONG&gt;Expiration Policy &lt;/STRONG&gt;job executes. &lt;/LI&gt;
&lt;LI&gt;The &lt;STRONG&gt;Expiration Policy &lt;/STRONG&gt;job currently can only be scheduled through the object model.&lt;/LI&gt;&lt;/OL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8685767" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="Information Management" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Information+Management/default.aspx" /></entry><entry><title>My Site Recommendations</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/07/01/my-site-recommendations.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/07/01/my-site-recommendations.aspx</id><published>2008-07-02T03:19:00Z</published><updated>2008-07-02T03:19:00Z</updated><content type="html">&lt;H1&gt;My Site Recommendations &lt;/H1&gt;
&lt;P&gt;The following My Site recommendations are a composite of best practices taken from experiences at Microsoft and other large customers. &lt;/P&gt;
&lt;H2&gt;Planning &lt;/H2&gt;
&lt;P&gt;My Sites (even if they are as small as possible and only really used to store a profile picture) complicate backup/recovery, and add complexity and risk to ensuring the availability of the rest of the SSP farm.&amp;nbsp; Large organizations (100K+ employees) should consider putting My Sites into a separate farm. &lt;/P&gt;
&lt;P&gt;Very large organizations might consider multiple My Site &lt;A href="http://technet.microsoft.com/en-us/library/cc263115(TechNet.10).aspx" mce_href="http://technet.microsoft.com/en-us/library/cc263115(TechNet.10).aspx"&gt;farms&lt;/A&gt;, perhaps regionally located. This minimizes the number of content databases per farm and places the My Sites geographically closer to the site owners. Having fewer content databases per farm eases administrative burdens. Having My Sites hosted closer to site owners reduces the affects of network latency, thereby enhancing their usage experience. Multiple My Site farms can also provide more flexibility in managing the effort and time required to deploy updates and service packs to any given farm. &lt;/P&gt;
&lt;P&gt;Always create a dedicated Web Application to host My Sites. This allows leveraging web application policies to define security, facilitates content database management, and enables creation of zones for external access. &lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;Do not customize the My Site site definition. Besides being unsupported, poorly designed customizations can severely impact server performance and unnecessarily consume valuable CPU and memory resources. Any customization should be done through feature stapling, see &lt;A href="http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx" mce_href="http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx"&gt;http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx&lt;/A&gt; and &lt;A href="http://blogs.msdn.com/cliffgreen/archive/2008/03/13/removing-web-parts-from-the-my-site-web-part-gallery.aspx" mce_href="http://blogs.msdn.com/cliffgreen/archive/2008/03/13/removing-web-parts-from-the-my-site-web-part-gallery.aspx"&gt;http://blogs.msdn.com/cliffgreen/archive/2008/03/13/removing-web-parts-from-the-my-site-web-part-gallery.aspx&lt;/A&gt; &lt;/SPAN&gt;&lt;/P&gt;
&lt;H2&gt;Indexing &lt;/H2&gt;
&lt;P&gt;Install the latest service pack (currently SP1). Be sure to get the latest post service pack hotfixes applied, in particular 21243 (Office QFE). There is an issue where incremental crawls will not pick up all changes on My Sites without the post SP1 hotfix. &lt;/P&gt;
&lt;P&gt;Use a separate content source for People Profiles rather than allowing it to default to the Local Office SharePoint Server Sites content source. My Sites full crawls can be time consuming due to the large number of site collections. Creating a separate content source enables independent crawl configuration; such as, the type of crawl and crawl frequency for My Sites. &lt;/P&gt;
&lt;H2&gt;Provisioning &lt;/H2&gt;
&lt;P&gt;Remember, a user profile page will exist for all employees following a full Active Directory profile import, even if no My Sites have been created yet. Profile pages allow basic employee information to be exposed in search results. &lt;/P&gt;
&lt;P&gt;Allow users to create their own My Site on demand. Do &lt;SPAN style="TEXT-DECORATION: underline"&gt;not&lt;/SPAN&gt; pre-provision My Sites. Generally, pre-provisioning is a time consuming process potentially taking many days or weeks. It gains little, and costs storage and administrative headaches. &lt;/P&gt;
&lt;H2&gt;Rolling-out &lt;/H2&gt;
&lt;P&gt;Make My Sites available to everyone on day 1. This allows for "viral" adoption by early adopters. This will eventually encourage others to create My Sites, thereby getting the momentum rolling. &lt;/P&gt;
&lt;P&gt;Send out invitations to a small group of "pilot" users who would be interested in trying out My Sites, based on their role in the organization. The pilot group might contain a few hundred users. This gets a critical mass of My Sites in place quickly. &lt;/P&gt;
&lt;P&gt;Try regional roll-outs via "soft launches", which include poster campaigns or brown bag lunch training at selected campuses and offices. &lt;/P&gt;
&lt;P&gt;About the 3&lt;SUP&gt;rd&lt;/SUP&gt; or 4&lt;SUP&gt;th&lt;/SUP&gt; month, promote the My Site feature in a story on the Intranet portal home page. &lt;/P&gt;
&lt;P&gt;Around the 6&lt;SUP&gt;th&lt;/SUP&gt; month, incorporate the concept of "filling out your profile" into new employee orientation as a specific training exercise. Now essentially all new hires will have a My Site (because they need one to store their profile picture). &lt;/P&gt;
&lt;H2&gt;Encouraging On-Going Adoption &lt;/H2&gt;
&lt;P&gt;Encourage high profile "executive blogging" to drive awareness and adoption of My Sites. Blogging topics might include annual business planning, corporate strategy, rumor control, etc. This can demystify blogging by encouraging many participants to make daily posts about what they were doing and what they are thinking about. Note: this implies more frequent incremental crawling to incorporate blog entries into the search index. &lt;/P&gt;
&lt;P&gt;Also, consider setting up a "Blogs" scope on the search home page to facilitate blog discovery. This can be accomplished by setting up scope based on the Content Type of blog posts. An example follows: &lt;/P&gt;&lt;IMG height=78 src="http://blogs.msdn.com/photos/jimmiet/images/8679288/original.aspx" width=650 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8679288/original.aspx" mce_keep="true"&gt; 
&lt;P&gt;Note that this scope will pick up Blog Posts no matter where the Blog resides, as long as those a SharePoint Blogs crawled by a SharePoint Content Source. &lt;/P&gt;
&lt;P&gt;Consider adding a link on the profile page that allows others to send an email to ask the person to fill out their profile ("peer nagging"). &lt;/P&gt;
&lt;P&gt;Explore holding a contest or raffle – &lt;EM&gt;If you fill out (or update) your profile this month you are eligible to win a prize&lt;/EM&gt;. &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8679267" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /><category term="My Sites" scheme="http://blogs.msdn.com/jimmiet/archive/tags/My+Sites/default.aspx" /></entry><entry><title>Vanity Site Collection URLs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/06/01/vanity-site-collection-urls.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/06/01/vanity-site-collection-urls.aspx</id><published>2008-06-01T17:05:00Z</published><updated>2008-06-01T17:05:00Z</updated><content type="html">&lt;META content=Word.Document name=ProgId&gt;
&lt;META content="Microsoft Word 12" name=Generator&gt;
&lt;META content="Microsoft Word 12" name=Originator&gt;&lt;LINK href="Site%20Collection%20Vanity%20URLs_files/filelist.xml" rel=File-List mce_href="Site%20Collection%20Vanity%20URLs_files/filelist.xml"&gt;&lt;LINK href="Site%20Collection%20Vanity%20URLs_files/editdata.mso" rel=Edit-Time-Data mce_href="Site%20Collection%20Vanity%20URLs_files/editdata.mso"&gt;
&lt;STYLE&gt;
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
&lt;/STYLE&gt;
&lt;LINK href="Site%20Collection%20Vanity%20URLs_files/themedata.thmx" rel=themeData mce_href="Site%20Collection%20Vanity%20URLs_files/themedata.thmx"&gt;&lt;LINK href="Site%20Collection%20Vanity%20URLs_files/colorschememapping.xml" rel=colorSchemeMapping mce_href="Site%20Collection%20Vanity%20URLs_files/colorschememapping.xml"&gt;
&lt;STYLE&gt;
&lt;!--
 /* Font Definitions */
 @font-face
	{font-family:Wingdings;
	panose-1:5 0 0 0 0 0 0 0 0 0;
	mso-font-charset:2;
	mso-generic-font-family:auto;
	mso-font-pitch:variable;
	mso-font-signature:0 268435456 0 0 -2147483648 0;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;
	mso-font-charset:0;
	mso-generic-font-family:roman;
	mso-font-pitch:variable;
	mso-font-signature:-1610611985 1107304683 0 0 159 0;}
@font-face
	{font-family:Cambria;
	panose-1:2 4 5 3 5 4 6 3 2 4;
	mso-font-charset:0;
	mso-generic-font-family:roman;
	mso-font-pitch:variable;
	mso-font-signature:-1610611985 1073741899 0 0 159 0;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:-1610611985 1073750139 0 0 159 0;}
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:-520082689 -1073717157 41 0 66047 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-parent:"";
	margin-top:6.0pt;
	margin-right:0in;
	margin-bottom:6.0pt;
	margin-left:0in;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
h1
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-link:"Heading 1 Char";
	mso-style-next:Normal;
	margin-top:24.0pt;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	line-height:115%;
	mso-pagination:widow-orphan lines-together;
	page-break-after:avoid;
	mso-outline-level:1;
	font-size:14.0pt;
	font-family:"Cambria","serif";
	mso-fareast-font-family:"Times New Roman";
	color:#365F91;
	mso-font-kerning:0pt;}
h2
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-locked:yes;
	mso-style-link:"Heading 2 Char";
	mso-style-next:Normal;
	margin-top:12.0pt;
	margin-right:0in;
	margin-bottom:3.0pt;
	margin-left:0in;
	line-height:115%;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:2;
	font-size:14.0pt;
	font-family:"Arial","sans-serif";
	font-style:italic;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	mso-style-unhide:no;
	font-family:"Times New Roman","serif";
	mso-bidi-font-family:"Times New Roman";
	color:blue;
	text-decoration:underline;
	text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-noshow:yes;
	mso-style-priority:99;
	color:purple;
	mso-themecolor:followedhyperlink;
	text-decoration:underline;
	text-underline:single;}
p.MsoDocumentMap, li.MsoDocumentMap, div.MsoDocumentMap
	{mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-link:"Document Map Char";
	margin-top:6.0pt;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	mso-fareast-font-family:Calibri;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	margin-top:6.0pt;
	margin-right:0in;
	margin-bottom:6.0pt;
	margin-left:.5in;
	mso-add-space:auto;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-type:export-only;
	margin-top:6.0pt;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	mso-add-space:auto;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-type:export-only;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	mso-add-space:auto;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast
	{mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-type:export-only;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:6.0pt;
	margin-left:.5in;
	mso-add-space:auto;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";}
span.Heading1Char
	{mso-style-name:"Heading 1 Char";
	mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-locked:yes;
	mso-style-link:"Heading 1";
	mso-ansi-font-size:14.0pt;
	mso-bidi-font-size:14.0pt;
	font-family:"Cambria","serif";
	mso-ascii-font-family:Cambria;
	mso-hansi-font-family:Cambria;
	mso-bidi-font-family:"Times New Roman";
	color:#365F91;
	font-weight:bold;}
span.Heading2Char
	{mso-style-name:"Heading 2 Char";
	mso-style-noshow:yes;
	mso-style-priority:9;
	mso-style-unhide:no;
	mso-style-locked:yes;
	mso-style-link:"Heading 2";
	mso-ansi-font-size:14.0pt;
	mso-bidi-font-size:14.0pt;
	font-family:"Cambria","serif";
	mso-ascii-font-family:Cambria;
	mso-ascii-theme-font:major-latin;
	mso-fareast-font-family:"Times New Roman";
	mso-fareast-theme-font:major-fareast;
	mso-hansi-font-family:Cambria;
	mso-hansi-theme-font:major-latin;
	mso-bidi-font-family:"Times New Roman";
	mso-bidi-theme-font:major-bidi;
	font-weight:bold;
	font-style:italic;}
span.DocumentMapChar
	{mso-style-name:"Document Map Char";
	mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-unhide:no;
	mso-style-locked:yes;
	mso-style-link:"Document Map";
	mso-ansi-font-size:8.0pt;
	mso-bidi-font-size:8.0pt;
	font-family:"Tahoma","sans-serif";
	mso-ascii-font-family:Tahoma;
	mso-hansi-font-family:Tahoma;
	mso-bidi-font-family:Tahoma;}
p.Sample, li.Sample, div.Sample
	{mso-style-name:Sample;
	mso-style-priority:99;
	mso-style-unhide:no;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.3in;
	margin-bottom:.0001pt;
	line-height:115%;
	mso-pagination:widow-orphan;
	background:#D9D9D9;
	font-size:9.0pt;
	mso-bidi-font-size:11.0pt;
	font-family:"Courier New";
	mso-fareast-font-family:Calibri;
	mso-bidi-font-family:"Times New Roman";
	mso-no-proof:yes;}
span.SpellE
	{mso-style-name:"";
	mso-spl-e:yes;}
span.GramE
	{mso-style-name:"";
	mso-gram-e:yes;}
.MsoChpDefault
	{mso-style-type:export-only;
	mso-default-props:yes;
	font-size:11.0pt;
	mso-ansi-font-size:11.0pt;
	mso-bidi-font-size:11.0pt;
	mso-ascii-font-family:Calibri;
	mso-fareast-font-family:Calibri;
	mso-hansi-font-family:Calibri;}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;
	mso-header-margin:.5in;
	mso-footer-margin:.5in;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
 /* List Definitions */
 @list l0
	{mso-list-id:-132;
	mso-list-type:simple;
	mso-list-template-ids:-1348853000;}
@list l0:level1
	{mso-level-tab-stop:1.25in;
	mso-level-number-position:left;
	margin-left:1.25in;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l1
	{mso-list-id:-131;
	mso-list-type:simple;
	mso-list-template-ids:-41805654;}
@list l1:level1
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	margin-left:1.0in;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l2
	{mso-list-id:-130;
	mso-list-type:simple;
	mso-list-template-ids:719192296;}
@list l2:level1
	{mso-level-tab-stop:.75in;
	mso-level-number-position:left;
	margin-left:.75in;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l3
	{mso-list-id:-129;
	mso-list-type:simple;
	mso-list-template-ids:22303018;}
@list l3:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l4
	{mso-list-id:-128;
	mso-list-type:simple;
	mso-list-template-ids:-1882151978;}
@list l4:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:1.25in;
	mso-level-number-position:left;
	margin-left:1.25in;
	text-indent:-.25in;
	font-family:Symbol;}
@list l5
	{mso-list-id:-127;
	mso-list-type:simple;
	mso-list-template-ids:1070477284;}
@list l5:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	margin-left:1.0in;
	text-indent:-.25in;
	font-family:Symbol;}
@list l6
	{mso-list-id:-126;
	mso-list-type:simple;
	mso-list-template-ids:225887656;}
@list l6:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:.75in;
	mso-level-number-position:left;
	margin-left:.75in;
	text-indent:-.25in;
	font-family:Symbol;}
@list l7
	{mso-list-id:-125;
	mso-list-type:simple;
	mso-list-template-ids:387619706;}
@list l7:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l8
	{mso-list-id:-120;
	mso-list-type:simple;
	mso-list-template-ids:-230531922;}
@list l8:level1
	{mso-level-tab-stop:.25in;
	mso-level-number-position:left;
	margin-left:.25in;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l9
	{mso-list-id:-119;
	mso-list-type:simple;
	mso-list-template-ids:-1072798772;}
@list l9:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:.25in;
	mso-level-number-position:left;
	margin-left:.25in;
	text-indent:-.25in;
	font-family:Symbol;}
@list l10
	{mso-list-id:301083591;
	mso-list-type:hybrid;
	mso-list-template-ids:1029606110 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l10:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l11
	{mso-list-id:824778230;
	mso-list-type:hybrid;
	mso-list-template-ids:-1354316894 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l11:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
@list l12
	{mso-list-id:1238252285;
	mso-list-type:hybrid;
	mso-list-template-ids:1808534394 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l12:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	font-family:Symbol;}
@list l13
	{mso-list-id:1655184215;
	mso-list-type:hybrid;
	mso-list-template-ids:-72568834 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l13:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-bidi-font-family:"Times New Roman";}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
--&gt;
&lt;/STYLE&gt;

&lt;DIV class=Section1&gt;
&lt;H1&gt;Vanity Site Collection URLs&lt;/H1&gt;
&lt;P class=MsoNormal&gt;A customer recently asked for “vanity” URLs for each of the major departments; HR, Finance, Legal, etc.; so for example, HR would be &lt;A href="http://hr.bigcorp/" mce_href="http://hr.bigcorp"&gt;http://hr.bigcorp&lt;/A&gt;, and legal would be &lt;A href="http://legal.bigcorp/" mce_href="http://legal.bigcorp"&gt;http://legal.bigcorp&lt;/A&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;No problem you say, just create a web application for each department, give the web application default zone the vanity URL, create corresponding DNS entries, and the requirement is fulfilled.&lt;/P&gt;
&lt;P class=MsoNormal&gt;The problem is there are over 30 departments, not to mention foreign subsidiaries, and possibly other “I want my own vanity URL” requests from other corporate groups. Since web applications are heavy resource consumers, each one requiring one IIS web site per zone, basing vanity URLS on web applications would not be feasible.&lt;/P&gt;
&lt;P class=MsoNormal&gt;The traditional out-of-the-box site collection paths did not meet the requirements;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT: 0.5in"&gt;Wildcard inclusion; e.g., &lt;A href="http://bigcorp/sites/finance" mce_href="http://bigcorp/sites/finance"&gt;http://bigcorp/sites/finance&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT: 0.5in"&gt;Explicit inclusion: e.g., &lt;A href="http://bigcorp/finance" mce_href="http://bigcorp/finance"&gt;http://bigcorp/finance&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;For both wildcard inclusion and explicit inclusion, the vanity part of the URL is at the end, which is not what was desired.&lt;/P&gt;
&lt;H2&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;Host-Named Site Collections&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal&gt;Host-named site collections (what used to be called "scalable hosting mode" in WSS v2) provide exactly the needed capability. Don’t confuse the terms &lt;I style="mso-bidi-font-style: normal"&gt;host-named&lt;/I&gt; with &lt;I style="mso-bidi-font-style: normal"&gt;host headers&lt;/I&gt;. They are different concepts. The &lt;I style="mso-bidi-font-style: normal"&gt;host-named &lt;/I&gt;concept applies to the internal SharePoint virtual path mapping mechanism; whereas &lt;I style="mso-bidi-font-style: normal"&gt;host headers&lt;/I&gt; apply to IIS web sites independent of SharePoint.&lt;/P&gt;
&lt;P class=MsoNormal&gt;Host-named site collections effectively allow use of an arbitrary URL, which is associated with an existing web application. There can be many host-named sites for a web application.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The net result is freedom to have as many vanity URLs as necessary, while limiting the number of web applications. We can have URLs like &lt;A href="http://finance.bigcorp/" mce_href="http://finance.bigcorp"&gt;http://finance.bigcorp&lt;/A&gt;, &lt;A href="http://finance/" mce_href="http://finance"&gt;http://finance&lt;/A&gt;, &lt;A href="http://my.finance/" mce_href="http://my.finance"&gt;http://my.finance&lt;/A&gt;, etc.&lt;/P&gt;
&lt;P class=MsoNormal&gt;Host-named sites cannot be created through the UI. You must use stsadm. This should not deter you, since the syntax is simple. The secret is to add the –&lt;SPAN class=SpellE&gt;hhurl&lt;/SPAN&gt; parameter to the stsadm &lt;SPAN class=SpellE&gt;createsite&lt;/SPAN&gt; command. &lt;/P&gt;
&lt;H2&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;Host-Named Site Collections Limitations&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal&gt;As with all good things, there are some limitations and complications. The following blog is an excellent read: &lt;A href="https://mail.microsoft.com/OWA/redir.aspx?C=481d8f52969b40ccbabd436c73460ae3&amp;amp;URL=http%3a%2f%2fblogs.msdn.com%2fsharepoint%2farchive%2f2007%2f03%2f06%2fwhat-every-sharepoint-administrator-needs-to-know-about-alternate-access-mappings-part-1.aspx" target=_blank mce_href="https://mail.microsoft.com/OWA/redir.aspx?C=481d8f52969b40ccbabd436c73460ae3&amp;amp;URL=http%3a%2f%2fblogs.msdn.com%2fsharepoint%2farchive%2f2007%2f03%2f06%2fwhat-every-sharepoint-administrator-needs-to-know-about-alternate-access-mappings-part-1.aspx"&gt;&lt;SPAN style="LINE-HEIGHT: 115%; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Tahoma"&gt;http://blogs.msdn.com/sharepoint/archive/2007/03/06/what-every-sharepoint-administrator-needs-to-know-about-alternate-access-mappings-part-1.aspx&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="LINE-HEIGHT: 115%; mso-bidi-font-size: 10.0pt; mso-bidi-font-family: Tahoma"&gt;.&lt;/SPAN&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-size: 10.0pt"&gt; &lt;/SPAN&gt;Quoting from this blog:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT: 0.5in"&gt;Host-named site collections short circuit much of the AAM functionality, including the URL remapping functionality.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;They're always considered to be in the Default zone, and their URL is &lt;SPAN class=GramE&gt;always&lt;/SPAN&gt; the same URL you supplied when creating the site collection.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You cannot use host-named site collections with off-box SSL termination, port translation, or host header manipulation scenarios.&lt;/P&gt;
&lt;P class=MsoNormal&gt;This whitepaper is also highly recommended reading. It discusses how to enable SSL, and many other configuration issues:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN-LEFT: 0.5in"&gt;&lt;A href="http://office.microsoft.com/search/redir.aspx?AssetID=AM102157711033" mce_href="http://office.microsoft.com/search/redir.aspx?AssetID=AM102157711033"&gt;http://office.microsoft.com/search/redir.aspx?AssetID=AM102157711033&lt;/A&gt;&lt;/P&gt;
&lt;H2&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;Step-by-Step Example&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal&gt;Assume we want to create a site collection with the vanity URL &lt;A href="http://finance.litwareinc.com/" mce_href="http://finance.litwareinc.com"&gt;http://finance.litwareinc.com&lt;/A&gt; in the &lt;A href="http://extranet.litwareinc.com/" mce_href="http://extranet.litwareinc.com"&gt;http://extranet.litwareinc.com&lt;/A&gt; web application.&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt;Step 1:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt; &lt;/SPAN&gt;Open a command prompt as a farm administrator, and then enter this command, being sure to include the –&lt;SPAN class=SpellE&gt;hhurl&lt;/SPAN&gt; parameter:&lt;/P&gt;
&lt;P class=Sample&gt;&amp;gt;stsadm -o createsite -url http://finance.litwareinc.com -ownerlogin litwareinc\administrator -owneremail administrator@litwareinc.com &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;-hhurl http://extranet.litwareinc.com&lt;/SPAN&gt; -sitetemplate STS#1 -title "Finance Department" -quota DepartmentalSite&lt;/P&gt;
&lt;P class=Sample&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Sample&gt;Operation completed successfully.&lt;/P&gt;
&lt;P class=MsoNormal&gt;The new site collection appears in the site collection list of the &lt;B style="mso-bidi-font-weight: normal"&gt;extranet.litwareinc.com&lt;/B&gt; web application.&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;&lt;IMG height=269 src="http://blogs.msdn.com/photos/jimmiet/images/8553453/original.aspx" width=651 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553453/original.aspx"&gt; 
&lt;P class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt;Step 2:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt; &lt;/SPAN&gt;Create a DNS entry for this new name, pointing to the &lt;A href="http://extranet.litwareinc.com/" mce_href="http://extranet.litwareinc.com"&gt;http://extranet.litwareinc.com&lt;/A&gt; IP address. For local test, make an entry the hosts file.&lt;/P&gt;&lt;IMG height=335 src="http://blogs.msdn.com/photos/jimmiet/images/8553473/original.aspx" width=653 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553473/original.aspx"&gt; 
&lt;P class=MsoNormal&gt;You can now open a browser and navigate to the site collection.&lt;/P&gt;&lt;IMG height=343 src="http://blogs.msdn.com/photos/jimmiet/images/8553459/original.aspx" width=878 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553459/original.aspx"&gt; 
&lt;P class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt;Step 3:&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 12pt; LINE-HEIGHT: 115%; mso-bidi-font-size: 11.0pt"&gt; &lt;/SPAN&gt;Create a search context for the new site collection, or include it as a starting address within an existing site collection. Start a crawl to include the site contents in the search index.&lt;/P&gt;&lt;IMG height=431 src="http://blogs.msdn.com/photos/jimmiet/images/8553480/original.aspx" width=671 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553480/original.aspx"&gt; &lt;IMG height=253 src="http://blogs.msdn.com/photos/jimmiet/images/8553458/original.aspx" width=634 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553458/original.aspx"&gt; 
&lt;P class=MsoNormal&gt;To test the search, create a simple text document in a shared document library. When the next increment crawl completes, you can then search for the document to verify the search results are using the vanity URL.&lt;/P&gt;&lt;IMG height=299 src="http://blogs.msdn.com/photos/jimmiet/images/8553481/original.aspx" width=685 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553481/original.aspx"&gt; &lt;IMG height=341 src="http://blogs.msdn.com/photos/jimmiet/images/8553465/original.aspx" width=643 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553465/original.aspx"&gt; 
&lt;H2&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;The Kerberos Factor&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoNormal&gt;The stsadm site creation command will give a warning if the host web application is using Kerberos authentication (negotiate).&lt;/P&gt;
&lt;P class=Sample&gt;&amp;gt;stsadm -o createsite -url http://finance.litwareinc.com –ownerlogin mossfs\administrator -owneremail administrator&lt;/P&gt;
&lt;P class=Sample&gt;@mossfs.com -hhurl http://dmz.litwareinc.com -sitetemplate STS#1 -title "Finance Department"&lt;/P&gt;
&lt;P class=Sample&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Sample&gt;WARNING: SharePoint no longer customizes Integrated Authentication security settings. This Web application may be using &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;Kerberos&lt;/SPAN&gt;, which can require manual configuration. See http://support.microsoft.c&lt;/P&gt;
&lt;P class=Sample&gt;om/?id=832769 for more information.&lt;/P&gt;
&lt;P class=Sample&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=Sample&gt;Operation completed successfully.&lt;/P&gt;
&lt;P class=MsoNormal&gt;It is necessary to register the vanity URL with Active Directory using &lt;SPAN class=SpellE&gt;setspn&lt;/SPAN&gt;.&lt;/P&gt;
&lt;P class=Sample&gt;&amp;gt;setspn -a http/finance.litwareinc.com litwareinc\administrator&lt;/P&gt;
&lt;P class=MsoNormal&gt;In my testing, I stumbled into another complication. Without realizing it at first, I created a site collection in the Intranet zone of a web application, which was configured for Kerberos.&lt;/P&gt;&lt;IMG height=185 src="http://blogs.msdn.com/photos/jimmiet/images/8553463/original.aspx" width=666 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553463/original.aspx"&gt; &lt;IMG height=187 src="http://blogs.msdn.com/photos/jimmiet/images/8553467/original.aspx" width=589 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553467/original.aspx"&gt; &lt;IMG height=160 src="http://blogs.msdn.com/photos/jimmiet/images/8553482/original.aspx" width=563 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553482/original.aspx"&gt; 
&lt;P class=MsoNormal&gt;After creating the site collection, adding the DNS (host file) entry, and executing &lt;SPAN class=SpellE&gt;setspn&lt;/SPAN&gt;, I got a “This site is under construction” error page every time I tried to browse to the site. I eventually worked-around this by explicitly adding a host header to the IIS web site. I consider this an unsupported solution, and so I recommend extensive testing before applying it to a production scenario.&lt;/P&gt;&lt;IMG height=357 src="http://blogs.msdn.com/photos/jimmiet/images/8553474/original.aspx" width=595 mce_src="http://blogs.msdn.com/photos/jimmiet/images/8553474/original.aspx"&gt; &lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8567657" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /><category term="Site Collection" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Site+Collection/default.aspx" /><category term="URL" scheme="http://blogs.msdn.com/jimmiet/archive/tags/URL/default.aspx" /></entry><entry><title>“Hidden” SSP Timer Jobs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/04/20/hidden-ssp-timer-jobs.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/04/20/hidden-ssp-timer-jobs.aspx</id><published>2008-04-20T17:21:00Z</published><updated>2008-04-20T17:21:00Z</updated><content type="html">&lt;META content="Microsoft Word 12 (filtered)" name=Generator&gt;
&lt;STYLE&gt;@font-face {
	font-family: Cambria Math;
}
@font-face {
	font-family: Cambria;
}
@font-face {
	font-family: Calibri;
}
@font-face {
	font-family: Tahoma;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
LI.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
DIV.MsoNormal {
	FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman","serif"
}
H1 {
	FONT-WEIGHT: bold; FONT-SIZE: 14pt; MARGIN: 24pt 0in 0pt; COLOR: #365f91; LINE-HEIGHT: 115%; FONT-FAMILY: "Cambria","serif"; mso-style-link: "Heading 1 Char"
}
A:link {
	COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
	COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
	COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
	COLOR: purple; TEXT-DECORATION: underline
}
P.MsoDocumentMap {
	FONT-SIZE: 8pt; BACKGROUND: yellow; MARGIN: 3pt 0in; COLOR: #993300; LINE-HEIGHT: 13pt; FONT-FAMILY: "Tahoma","sans-serif"
}
LI.MsoDocumentMap {
	FONT-SIZE: 8pt; BACKGROUND: yellow; MARGIN: 3pt 0in; COLOR: #993300; LINE-HEIGHT: 13pt; FONT-FAMILY: "Tahoma","sans-serif"
}
DIV.MsoDocumentMap {
	FONT-SIZE: 8pt; BACKGROUND: yellow; MARGIN: 3pt 0in; COLOR: #993300; LINE-HEIGHT: 13pt; FONT-FAMILY: "Tahoma","sans-serif"
}
P {
	FONT-SIZE: 12pt; MARGIN: 0in 0in 7.5pt; FONT-FAMILY: "Times New Roman","serif"
}
P.Sample {
	FONT-SIZE: 9pt; BACKGROUND: #d9d9d9; MARGIN: 0in 0in 0pt 0.3in; LINE-HEIGHT: 115%; FONT-FAMILY: "Courier New"; mso-style-name: Sample
}
LI.Sample {
	FONT-SIZE: 9pt; BACKGROUND: #d9d9d9; MARGIN: 0in 0in 0pt 0.3in; LINE-HEIGHT: 115%; FONT-FAMILY: "Courier New"; mso-style-name: Sample
}
DIV.Sample {
	FONT-SIZE: 9pt; BACKGROUND: #d9d9d9; MARGIN: 0in 0in 0pt 0.3in; LINE-HEIGHT: 115%; FONT-FAMILY: "Courier New"; mso-style-name: Sample
}
SPAN.Heading1Char {
	FONT-WEIGHT: bold; COLOR: #365f91; FONT-FAMILY: "Cambria","serif"; mso-style-link: "Heading 1"; mso-style-name: "Heading 1 Char"
}
DIV.Section1 {
	page: Section1
}
&lt;/STYLE&gt;

&lt;DIV class=Section1&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in; LINE-HEIGHT: 115%"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'"&gt;Not all timer jobs are visible in the Central Administration timer job definition page. There are MOSS 2007 timer jobs in the SSP application which don’t appear in the Central Administration page. It makes sense that these jobs are not visible, since there is nothing you can modify or disable. All the same, it would be nice to know what these jobs are, and what their schedules are, in case you want to schedule other potentially conflicting activities.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in; LINE-HEIGHT: 115%"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'"&gt;You can see the names of these SSP jobs by using &lt;B&gt;stsadm enumssptimerjobs&lt;/B&gt; command, as in the following console sample (view &lt;A class="" title="Hidden SSP Timer Jobs" href="http://blogs.msdn.com/jimmiet/pages/hidden-ssp-timer-jobs.aspx" mce_href="http://blogs.msdn.com/jimmiet/pages/hidden-ssp-timer-jobs.aspx"&gt;entire article&lt;/A&gt; ...)&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in; LINE-HEIGHT: 115%"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8412840" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="Profile Import" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Profile+Import/default.aspx" /><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /></entry><entry><title>How are SSP Associations Changed?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/04/19/how-are-ssp-associations-changed.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/04/19/how-are-ssp-associations-changed.aspx</id><published>2008-04-20T00:44:00Z</published><updated>2008-04-20T00:44:00Z</updated><content type="html">&lt;DIV class=Section1&gt;
&lt;P class=MsoNormal&gt;I recently heard a question, “How do you change SSP web application associations through the object model (OM)?”&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Searching the OM online help didn’t find any results. Any yet theoretically, it must be possible, since you can set the web application SSP association through Central Administration.&lt;/P&gt;
&lt;P class=MsoNormal&gt;Then the thought occurred, why not reverse engineer the Central Administration page to see how it is done? Here are the steps. This technique can be applied to any administration page if you are curious how the product team wrote the code. (view &lt;A class="" title="entire article" href="http://blogs.msdn.com/jimmiet/pages/how-are-ssp-associations-changed.aspx" mce_href="http://blogs.msdn.com/jimmiet/pages/how-are-ssp-associations-changed.aspx"&gt;entire article&lt;/A&gt;...)&lt;/P&gt;&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8410454" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /></entry><entry><title>Deleting User Profiles</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/04/05/deleting-user-profiles.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/04/05/deleting-user-profiles.aspx</id><published>2008-04-05T17:42:00Z</published><updated>2008-04-05T17:42:00Z</updated><content type="html">&lt;META content=Word.Document name=ProgId&gt;
&lt;META content="Microsoft Word 12" name=Generator&gt;
&lt;META content="Microsoft Word 12" name=Originator&gt;&lt;LINK href="Deleting%20User%20Profiles_files/filelist.xml" rel=File-List mce_href="Deleting%20User%20Profiles_files/filelist.xml"&gt;&lt;LINK href="Deleting%20User%20Profiles_files/editdata.mso" rel=Edit-Time-Data mce_href="Deleting%20User%20Profiles_files/editdata.mso"&gt;
&lt;STYLE&gt;v\:* {
	BEHAVIOR: url(#default#VML)
}
o\:* {
	BEHAVIOR: url(#default#VML)
}
w\:* {
	BEHAVIOR: url(#default#VML)
}
.shape {
	BEHAVIOR: url(#default#VML)
}
&lt;/STYLE&gt;
&lt;LINK target=Deleting%20User%20Profiles_files/props0002.xml href="Deleting%20User%20Profiles_files/item0001.xml" rel=dataStoreItem mce_href="Deleting%20User%20Profiles_files/item0001.xml"&gt;&lt;LINK href="Deleting%20User%20Profiles_files/themedata.thmx" rel=themeData mce_href="Deleting%20User%20Profiles_files/themedata.thmx"&gt;&lt;LINK href="Deleting%20User%20Profiles_files/colorschememapping.xml" rel=colorSchemeMapping mce_href="Deleting%20User%20Profiles_files/colorschememapping.xml"&gt;&lt;LINK href="Deleting%20User%20Profiles_files/plchdr.htm" rel=plchdr mce_href="Deleting%20User%20Profiles_files/plchdr.htm"&gt;
&lt;STYLE&gt;@font-face {
	font-family: Cambria Math;
}
@font-face {
	font-family: Calibri;
}
@font-face {
	font-family: Tahoma;
}
@font-face {
	font-family: Segoe UI;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; mso-header-margin: .5in; mso-footer-margin: .5in; mso-paper-source: 0; }
P.MsoNormal {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan
}
LI.MsoNormal {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan
}
DIV.MsoNormal {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan
}
H1 {
	FONT-WEIGHT: bold; FONT-SIZE: 15pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 18.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 5; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 1; mso-themeshade: 191; mso-font-kerning: 0pt
}
H2 {
	FONT-WEIGHT: bold; FONT-SIZE: 13pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 16.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 6; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 2; mso-themeshade: 191
}
H3 {
	FONT-WEIGHT: bold; FONT-SIZE: 11pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 7; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 3; mso-themeshade: 191
}
H4 {
	FONT-WEIGHT: normal; FONT-SIZE: 11pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 8; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 4; mso-themeshade: 191
}
H5 {
	FONT-WEIGHT: normal; FONT-SIZE: 11pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-STYLE: italic; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 14.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 9; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 5; mso-themeshade: 191
}
H6 {
	FONT-WEIGHT: bold; FONT-SIZE: 10pt; MARGIN: 10pt 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-priority: 10; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal; mso-outline-level: 6; mso-themeshade: 191
}
P {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-pagination: widow-orphan
}
P.MsoAcetate {
	FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-style-priority: 99; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-link: "Balloon Text Char"
}
LI.MsoAcetate {
	FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-style-priority: 99; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-link: "Balloon Text Char"
}
DIV.MsoAcetate {
	FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-style-priority: 99; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-link: "Balloon Text Char"
}
SPAN.MsoPlaceholderText {
	COLOR: gray; mso-style-priority: 99; mso-style-unhide: no; mso-style-noshow: yes
}
P.MsoListParagraph {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto
}
LI.MsoListParagraph {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto
}
DIV.MsoListParagraph {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto
}
P.MsoListParagraphCxSpFirst {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
LI.MsoListParagraphCxSpFirst {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
DIV.MsoListParagraphCxSpFirst {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
P.MsoListParagraphCxSpMiddle {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
LI.MsoListParagraphCxSpMiddle {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
DIV.MsoListParagraphCxSpMiddle {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
P.MsoListParagraphCxSpLast {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
LI.MsoListParagraphCxSpLast {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
DIV.MsoListParagraphCxSpLast {
	FONT-SIZE: 11pt; MARGIN: 0in 0in 10pt 0.5in; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 34; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-add-space: auto; mso-style-type: export-only
}
P.MsoQuote {
	FONT-SIZE: 11pt; MARGIN: 0in 0.5in 10pt; COLOR: black; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-themecolor: text1; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal
}
LI.MsoQuote {
	FONT-SIZE: 11pt; MARGIN: 0in 0.5in 10pt; COLOR: black; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-themecolor: text1; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal
}
DIV.MsoQuote {
	FONT-SIZE: 11pt; MARGIN: 0in 0.5in 10pt; COLOR: black; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-themecolor: text1; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-priority: 1; mso-style-unhide: no; mso-style-qformat: yes; mso-pagination: widow-orphan; mso-style-next: Normal
}
P.Publishwithline {
	FONT-WEIGHT: bold; FONT-SIZE: 16pt; MARGIN: 0in 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 19.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan; mso-themeshade: 191; mso-style-noshow: yes; mso-style-name: "Publish with line"
}
LI.Publishwithline {
	FONT-WEIGHT: bold; FONT-SIZE: 16pt; MARGIN: 0in 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 19.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan; mso-themeshade: 191; mso-style-noshow: yes; mso-style-name: "Publish with line"
}
DIV.Publishwithline {
	FONT-WEIGHT: bold; FONT-SIZE: 16pt; MARGIN: 0in 0in 0pt; COLOR: #17365d; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 19.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: major-fareast; mso-themecolor: text2; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: major-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: major-bidi; mso-style-unhide: no; mso-style-qformat: yes; mso-style-parent: ""; mso-pagination: widow-orphan; mso-themeshade: 191; mso-style-noshow: yes; mso-style-name: "Publish with line"
}
P.PublishStatus {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; BACKGROUND: #fdeb9f; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Publish Status"; mso-border-alt: solid #FDBD5E .5pt
}
LI.PublishStatus {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; BACKGROUND: #fdeb9f; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Publish Status"; mso-border-alt: solid #FDBD5E .5pt
}
DIV.PublishStatus {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; BACKGROUND: #fdeb9f; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Publish Status"; mso-border-alt: solid #FDBD5E .5pt
}
P.PublishStatusAccessible {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: PublishStatus_Accessible; mso-border-alt: solid #FDBD5E .5pt
}
LI.PublishStatusAccessible {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: PublishStatus_Accessible; mso-border-alt: solid #FDBD5E .5pt
}
DIV.PublishStatusAccessible {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 9pt; PADDING-BOTTOM: 0in; MARGIN: 6pt 0in 2pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-bidi-font-size: 13.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 1.0pt 4.0pt 1.0pt 4.0pt; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: PublishStatus_Accessible; mso-border-alt: solid #FDBD5E .5pt
}
P.Account {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Account; tab-stops: .05in 63.35pt
}
LI.Account {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Account; tab-stops: .05in 63.35pt
}
DIV.Account {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Account; tab-stops: .05in 63.35pt
}
P.Categories {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: Account; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Categories; tab-stops: .05in 63.35pt
}
LI.Categories {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: Account; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Categories; tab-stops: .05in 63.35pt
}
DIV.Categories {
	FONT-SIZE: 9pt; MARGIN: 0in 0in 0pt; COLOR: #4f81bd; FONT-FAMILY: "Segoe UI","sans-serif"; mso-bidi-font-size: 12.0pt; mso-fareast-font-family: "Segoe UI"; mso-bidi-font-family: "Segoe UI"; mso-style-unhide: no; mso-style-parent: Account; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: Categories; tab-stops: .05in 63.35pt
}
P.PadderBetweenTitleandProperties {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 1pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Padder Between Title and Properties"
}
LI.PadderBetweenTitleandProperties {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 1pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Padder Between Title and Properties"
}
DIV.PadderBetweenTitleandProperties {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 1pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: "Padder Between Title and Properties"
}
P.PadderBetweenControlandBody {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-next: Normal; mso-style-noshow: yes; mso-style-name: "Padder Between Control and Body"
}
LI.PadderBetweenControlandBody {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-next: Normal; mso-style-noshow: yes; mso-style-name: "Padder Between Control and Body"
}
DIV.PadderBetweenControlandBody {
	FONT-SIZE: 1pt; MARGIN: 0in 0in 6pt; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-pagination: widow-orphan; mso-style-next: Normal; mso-style-noshow: yes; mso-style-name: "Padder Between Control and Body"
}
P.underline {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 1pt; PADDING-BOTTOM: 0in; MARGIN: 2pt 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 0in 0in 2.0pt 0in; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: underline; mso-border-bottom-alt: solid #4F81BD 1.0pt; mso-border-bottom-themecolor: accent1
}
LI.underline {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 1pt; PADDING-BOTTOM: 0in; MARGIN: 2pt 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 0in 0in 2.0pt 0in; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: underline; mso-border-bottom-alt: solid #4F81BD 1.0pt; mso-border-bottom-themecolor: accent1
}
DIV.underline {
	BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 0in; FONT-SIZE: 1pt; PADDING-BOTTOM: 0in; MARGIN: 2pt 0in 0pt; BORDER-LEFT: medium none; PADDING-TOP: 0in; BORDER-BOTTOM: medium none; FONT-FAMILY: "Calibri","sans-serif"; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-padding-alt: 0in 0in 2.0pt 0in; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-unhide: no; mso-style-parent: ""; mso-pagination: widow-orphan; mso-style-noshow: yes; mso-style-name: underline; mso-border-bottom-alt: solid #4F81BD 1.0pt; mso-border-bottom-themecolor: accent1
}
SPAN.BalloonTextChar {
	FONT-FAMILY: "Tahoma","sans-serif"; mso-bidi-font-size: 8.0pt; mso-ascii-font-family: Tahoma; mso-hansi-font-family: Tahoma; mso-bidi-font-family: Tahoma; mso-style-priority: 99; mso-style-unhide: no; mso-style-noshow: yes; mso-style-link: "Balloon Text"; mso-style-name: "Balloon Text Char"; mso-style-locked: yes; mso-ansi-font-size: 8.0pt
}
.MsoChpDefault {
	mso-bidi-font-size: 10.0pt; mso-fareast-font-family: "Times New Roman"; mso-fareast-theme-font: minor-fareast; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-font-family: Calibri; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: "Times New Roman"; mso-bidi-theme-font: minor-bidi; mso-style-type: export-only; mso-default-props: yes
}
.MsoPapDefault {
	MARGIN-BOTTOM: 10pt; mso-style-type: export-only
}
DIV.Section1 {
	page: Section1
}
&lt;/STYLE&gt;

&lt;DIV class=Section1&gt;
&lt;P class=MsoNormal&gt;The out-of-the-box UI provides a means to manually remove user profiles. Navigate to &lt;B style="mso-bidi-font-weight: normal"&gt;SSP Admin &amp;gt; User Profile and Properties &amp;gt; View User Profiles&lt;/B&gt;. Search for the user’s profile, and then click the “Delete” context menu item or the &lt;STRONG&gt;Delete&lt;/STRONG&gt; toolbar button. &lt;/P&gt;
&lt;P class=MsoNormal&gt;This is fine for an occasional profile deletion; but what if you need to delete thousands of profiles? We recently ran into this situation. (View &lt;A class="" title="Deleting User Profiles" href="http://blogs.msdn.com/jimmiet/pages/deleting-user-profiles.aspx" mce_href="http://blogs.msdn.com/jimmiet/pages/deleting-user-profiles.aspx"&gt;entire article&lt;/A&gt; ...)&lt;/P&gt;&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8360768" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="User Profile" scheme="http://blogs.msdn.com/jimmiet/archive/tags/User+Profile/default.aspx" /></entry><entry><title>DST and Timer Jobs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/03/29/dst-and-timer-jobs.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/03/29/dst-and-timer-jobs.aspx</id><published>2008-03-30T00:48:00Z</published><updated>2008-03-30T00:48:00Z</updated><content type="html">&lt;P&gt;Now that daylight savings has arrived in the United States, have you noticed problems with timer jobs not running when expected? &lt;/P&gt;
&lt;P&gt;I recently encountered this trying to deploy solution packages using stsadm scripts. In the past, these scripts ran flawlessly. The old solutions were retracted and deleted, the new solution versions added and deployed across all farm servers within a few minutes, and life was good. &lt;/P&gt;
&lt;P&gt;Last week I was working with a customer to deploy a new staging farm. We got to the point at which the solution deployment scripts were run. We waited, and waited, and waited. The script was hung at &lt;STRONG&gt;stsadm –o execadmsvcjobs&lt;/STRONG&gt;, which was called after executing several &lt;STRONG&gt;stsadm –o deploysolution -name solutionpackage1.wsp -immediate -force –allowGacDeployment &lt;/STRONG&gt;statements. What should have happened is the timer jobs to deploy the solution across the farm servers should have executed within about a minute. Instead, over an hour passed. Then suddenly, the jobs ran. What caused this odd behavior, which had never happened before with the same scripts? Was there a farm configuration problem? &lt;/P&gt;
&lt;P&gt;Then a thought occurred. The time had changed to daylight savings a week before; moving the clocks ahead one hour. Could there be a connection? &lt;/P&gt;
&lt;P&gt;A little research brought the problem to light. WSS 3.0 SP1 includes fixes to timer job DST scheduling problems. See 938663 ( &lt;A href="http://support.microsoft.com/kb/938663/" mce_href="http://support.microsoft.com/kb/938663/"&gt;http://support.microsoft.com/kb/938663/&lt;/A&gt; ) One-time timer jobs in Windows SharePoint Services 3.0 are delayed by at least one hour when the jobs are scheduled to occur during daylight saving time (DST). &lt;/P&gt;
&lt;P&gt;A quick check in &lt;STRONG&gt;Central Administration &amp;gt; Operations &amp;gt; Servers in Farm&lt;/STRONG&gt;, showed the installed version number was &lt;STRONG&gt;12.0.0.4518&lt;/STRONG&gt;. It should have been &lt;STRONG&gt;12.0.0.6219&lt;/STRONG&gt; if SP1 was installed. We installed WSS 3.0 SP1, and the timer job scheduling problem disappeared! &lt;/P&gt;
&lt;P&gt;I strongly encourage installation of WSS/MOSS SP1. It fixes many issues, DST just being one example. Taken time to read and following the installation instructions precisely! Remember, you have to update all servers in the farm at once. There is no rolling update, so if you have a multiple server farm with large content databases, plan on doing this over a weekend to avoid disrupting your user community.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8343804" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /><category term="SP1" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SP1/default.aspx" /><category term="DST" scheme="http://blogs.msdn.com/jimmiet/archive/tags/DST/default.aspx" /></entry><entry><title>User Profile Change Logging</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jimmiet/archive/2008/03/29/user-profile-change-logging.aspx" /><id>http://blogs.msdn.com/jimmiet/archive/2008/03/29/user-profile-change-logging.aspx</id><published>2008-03-29T23:56:00Z</published><updated>2008-03-29T23:56:00Z</updated><content type="html">&amp;nbsp; 
&lt;H1&gt;Profile Change Logging&lt;/H1&gt;
&lt;P&gt;There is a table in the SSP database named &lt;B&gt;UserProfileEventLog&lt;/B&gt;. The table maintains a history of user profile property changes. By default, it retains 7 days of history. This table can cause problems in a couple of ways.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;First issue: size&lt;/B&gt;. This table contains one row per change of a property in a user profile. The row contains the old and new property values, along with associated metadata like the datetime the property was changed. The implication is that the table can grow large. Assume you just configured the profile import and are ready to start the first Active Directory import. Further, assume your organization has 100,000 user accounts, and each account be populated with 12 AD attributes.&amp;nbsp; The full import will result in 100,000 X 12 = 1.2 millions rows being inserted into UserProfileEventLog. &amp;nbsp;To extend the example, assume you also have a BDC import connection populating another 20 properties from your company's HR system. That adds another 2 million rows. There are now 3.2 million rows in the event log table.&amp;nbsp; If each row is 100 bytes (old value, new value, plus metadata), the table is now approximately 300 MB in size.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Second issue: deleting old entries&lt;/B&gt;. The change history is kept for a configurable number of days. The concern is how many rows will have to be deleted on a given day? The number of days of history is 7 days be default, but can be set using &lt;B&gt;stsadm.exe -o profilechangelog -title &amp;lt;SSP Name&amp;gt; -daysofhistory &amp;lt;number of days&amp;gt; -generateanniversaries&lt;/B&gt; (&lt;A href="http://technet.microsoft.com/en-us/library/cc263013.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc263013.aspx"&gt;http://technet.microsoft.com/en-us/library/cc263013.aspx&lt;/A&gt;). &amp;nbsp;The critical issue is that MOSS has to remove a full day of history every day to honor the &lt;I&gt;daysofhistory&lt;/I&gt; setting. Using the numbers in the preceding paragraph, 7 days after the first full import, MOSS is going to delete 3.2 millions rows of data all at once! &amp;nbsp;What makes this an issue is that this is done with a single SQL statement, something like &lt;B&gt;DELETE FROM&amp;nbsp; UserProfileEventLog WHERE EventId &amp;lt; @MinEventTime&lt;/B&gt;. Think of the implications. As a single statement, this will hold locks until all 3.2 million rows are deleted. These locks might prevent other database transactions from completing; but it also means the transaction log (even with simple recovery mode) cannot be truncated, and will therefore grow until at least this DELETE statement completes. I have seen this delete statement run for 4 hours, with the transaction log quadrupling in size.&lt;/P&gt;
&lt;P&gt;This is little you can do to avoid this. Although you can adjust the number of days of history, MOSS will eventually try to delete an entire day's history at some point. The deletion is done by an internal timer job buried within the SSP. The job is hard coded to run at 10:00 PM daily. You cannot change this scheduled time.&lt;/P&gt;
&lt;P&gt;What are the take-aways?&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;1. Be prepared for an occasional long running DELETE statement. Ensure you have sufficient transaction log space to accommodate the potential transaction log growth.&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;2. Don't schedule any other timer jobs or database maintenance for 10:00 PM to minimize possible deadlocks and transaction timeouts.&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;3. Be careful using &lt;STRONG&gt;stsadm -o profilechangelog&lt;/STRONG&gt; to reduce the number of days of history, because the next time 10:00 PM comes, MOSS will try to delete multiple days of history all at once.&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8343760" width="1" height="1"&gt;</content><author><name>jimmiet</name><uri>http://blogs.msdn.com/members/jimmiet.aspx</uri></author><category term="Profile Import" scheme="http://blogs.msdn.com/jimmiet/archive/tags/Profile+Import/default.aspx" /><category term="SharePoint" scheme="http://blogs.msdn.com/jimmiet/archive/tags/SharePoint/default.aspx" /><category term="User Profile" scheme="http://blogs.msdn.com/jimmiet/archive/tags/User+Profile/default.aspx" /></entry></feed>