<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Hosam Kamel : IIS 6.0</title><link>http://weblogs.asp.net/hosamkamel/archive/tags/IIS+6.0/default.aspx</link><description>Tags: IIS 6.0</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>How to identify your application worker process (w3wp)</title><link>http://weblogs.asp.net/hosamkamel/archive/2009/10/18/how-to-identify-your-application-worker-process-w3wp.aspx</link><pubDate>Sun, 18 Oct 2009 04:43:05 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7232279</guid><dc:creator>HosamKamel</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/hosamkamel/rsscomments.aspx?PostID=7232279</wfw:commentRss><comments>http://weblogs.asp.net/hosamkamel/archive/2009/10/18/how-to-identify-your-application-worker-process-w3wp.aspx#comments</comments><description>&lt;p&gt;When working with multiple application pools it’s being difficult to identify which worker process (w3wp.exe) you want to attach your debugger to while debugging your asp.net web application .&lt;/p&gt;  &lt;p&gt;&lt;a href="http://weblogs.asp.net/blogs/hosamkamel/Attachtoprocess_50495720.jpg"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Attach to process" border="0" alt="Attach to process" src="http://weblogs.asp.net/blogs/hosamkamel/Attachtoprocess_thumb_46249028.jpg" width="244" height="172" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To identify your application worker process (w3wp), You have to get the correct worker process ID to do so:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;For Window 2008 or Vista (IIS 7.0)&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;IIS 7.0 shipped with a new utility called &lt;a href="http://learn.iis.net/page.aspx/114/getting-started-with-appcmdexe/" target="_blank"&gt;AppCmd&lt;/a&gt; which serve as a command line server management utility. &lt;/li&gt;    &lt;li&gt;This tool located in %systemroot%\system32\inetsrv\AppCmd.exe &lt;/li&gt;    &lt;li&gt;To list current worker process Id’s along with its corresponding site use the below command&amp;#160; &lt;div class="csharpcode"&gt;       &lt;pre class="alt"&gt;AppCmd.exe list wps&lt;/pre&gt;
    &lt;/div&gt;
    &lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://weblogs.asp.net/blogs/hosamkamel/image_4ABA9AE2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/hosamkamel/image_thumb_6C56C3B3.png" width="244" height="139" /&gt;&lt;/a&gt;&amp;#160; &lt;/li&gt;

  &lt;li&gt;once you got your application worker process Id, you select the correct worker process from “Attach to Process” dialog on Visual Studio. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For Window 2003 (IIS 6.0)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Use &lt;a href="http://msdn.microsoft.com/en-us/library/ms525006.aspx" target="_blank"&gt;iisapp.vbs&lt;/a&gt; script, a command line tool included in IIS 6.0 is used to list worker processes &lt;/li&gt;

  &lt;li&gt;This script located in %SystemRoot%\System32\IIsApp.vbs &lt;/li&gt;

  &lt;li&gt;Run it by typing 
    &lt;div class="csharpcode"&gt;
      &lt;pre class="alt"&gt;cscript IIsApp.vbs&lt;/pre&gt;
    &lt;/div&gt;
    &lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://weblogs.asp.net/blogs/hosamkamel/image_109BA836.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://weblogs.asp.net/blogs/hosamkamel/image_thumb_2C7CB761.png" width="244" height="123" /&gt;&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;once you got your application worker process Id, you select the correct worker process from “Attach to Process” dialog on Visual Studio. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hope it helps.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7232279" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/.NET+Tips+_2600_+Tricks/default.aspx">.NET Tips &amp; Tricks</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Visual+Studio+2005+Tips/default.aspx">Visual Studio 2005 Tips</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/ASP.NET+Tips+_2600_+Tricks/default.aspx">ASP.NET Tips &amp; Tricks</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+7.0/default.aspx">IIS 7.0</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows/default.aspx">Windows</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Vista/default.aspx">Vista</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows+Server+2008+Server+Core/default.aspx">Windows Server 2008 Server Core</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows+Server+2003/default.aspx">Windows Server 2003</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows+Server+2008+64-bit/default.aspx">Windows Server 2008 64-bit</category></item><item><title>Windows 2008 AND IISRESET.EXE</title><link>http://weblogs.asp.net/hosamkamel/archive/2009/03/05/windows-2008-and-iisreset-exe.aspx</link><pubDate>Thu, 05 Mar 2009 00:55:18 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6937853</guid><dc:creator>HosamKamel</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/hosamkamel/rsscomments.aspx?PostID=6937853</wfw:commentRss><comments>http://weblogs.asp.net/hosamkamel/archive/2009/03/05/windows-2008-and-iisreset-exe.aspx#comments</comments><description>&lt;p&gt;&lt;font face="ca"&gt;&lt;strong&gt;&lt;u&gt;IISreset.exe&lt;/u&gt;&lt;/strong&gt; is a magical command that resolves many problems! Err… well, yeah that command restarts all IIS related processes and thus essentially running it cleans up all the “mess”. &lt;strong&gt;&lt;em&gt;So is there anything special about IISReset.exe in Windows 2008?&lt;/em&gt;&lt;/strong&gt; Yes and I do not recommend using it and here’s very useful information that you must know about what this command does.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Read more here &lt;a title="http://blogs.msdn.com/sudeepg/archive/2009/02/14/windows-2008-and-iisreset-exe.aspx" href="http://blogs.msdn.com/sudeepg/archive/2009/02/14/windows-2008-and-iisreset-exe.aspx"&gt;&lt;font face="ca"&gt;http://blogs.msdn.com/sudeepg/archive/2009/02/14/windows-2008-and-iisreset-exe.aspx&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6937853" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+7.0/default.aspx">IIS 7.0</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows/default.aspx">Windows</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Windows+Server+2008+Server+Core/default.aspx">Windows Server 2008 Server Core</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category></item><item><title>Secure File Download Area using IIS 6.0 and IIS 7.0</title><link>http://weblogs.asp.net/hosamkamel/archive/2008/12/15/secure-file-download-area-using-iis-6-0-and-iis-7-0.aspx</link><pubDate>Mon, 15 Dec 2008 10:54:03 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:6787279</guid><dc:creator>HosamKamel</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/hosamkamel/rsscomments.aspx?PostID=6787279</wfw:commentRss><comments>http://weblogs.asp.net/hosamkamel/archive/2008/12/15/secure-file-download-area-using-iis-6-0-and-iis-7-0.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;u&gt;For IIS 6.0:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ASP.NET Forms authentication will only secure content that is processed by     &lt;br /&gt;the aspnet_isapi.dll (mainly .aspx files). If you need to replace other static file types (such as text files, video files, etc...), you can do that by mapping them to the aspnet_isapi.dll.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;OR using &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Peter Simple File Handler for ASP.NET 2.0 &lt;a title="http://blogs.msdn.com/petel/archive/2005/12/01/499189.aspx" href="http://blogs.msdn.com/petel/archive/2005/12/01/499189.aspx"&gt;http://blogs.msdn.com/petel/archive/2005/12/01/499189.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;For IIS 7.0 (Integrated Pipeline mode):&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The default configuration for all managed modules shipped with IIS 7.0, including the Forms Authentication and URL Authorization modules, uses a precondition so that these modules only apply to content that an&amp;#160; (ASP.NET) handler manages. This is done for backwards compatibility reasons. (as mentioned in For IIS 6.0 section)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;By removing the precondition, we make the desired managed module execute for all requests to the application, regardless of content. This is necessary in order to protect our static files, and any other application content with Forms-based authentication. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;To do this, open the application's web.config file located in the %systemdrive%\inetpub\wwwroot directory, and paste the following lines immediately below the first &amp;lt;configuration&amp;gt; element: &lt;/li&gt; &lt;/ul&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;system.webServer&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;modules&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;remove&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FormsAuthenticationModule&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;   &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FormsAuthenticationModule&amp;quot;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;&lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Web.Security.FormsAuthenticationModule&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;remove&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;UrlAuthorization&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;UrlAuthorization&amp;quot;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;&lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Web.Security.UrlAuthorizationModule&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;remove&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;DefaultAuthentication&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;DefaultAuthentication&amp;quot;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;&lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;System.Web.Security.DefaultAuthenticationModule&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;    &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;modules&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;
&lt;/div&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;system.webServer&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;
.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;p&gt;This configuration re-adds the module elements without the precondition, enabling them to execute for all requests to the application. &lt;/p&gt;

&lt;p&gt;Check this article for more explanation&amp;#160; &lt;a title="http://learn.iis.net/page.aspx/244/how-to-take-advantage-of-the-iis7-integrated-pipeline/" href="http://learn.iis.net/page.aspx/244/how-to-take-advantage-of-the-iis7-integrated-pipeline/"&gt;http://learn.iis.net/page.aspx/244/how-to-take-advantage-of-the-iis7-integrated-pipeline/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;Hope it helps.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=6787279" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/ASP.NET+Tips+_2600_+Tricks/default.aspx">ASP.NET Tips &amp; Tricks</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/ASP.NET+Deployment/default.aspx">ASP.NET Deployment</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+7.0/default.aspx">IIS 7.0</category><category domain="http://weblogs.asp.net/hosamkamel/archive/tags/IIS+6.0/default.aspx">IIS 6.0</category></item></channel></rss>