title: Windows Server 2008 R2 + IIS 7.5 - Resource cannot be found
body: <p>I have migrated our company web apps from Windows Server 2003 to Windows Server 2008 R2. The are all .Net 2.0 classic web apps. They all seem to work fine, except when accessing any resource with a path starting with /Reports/... </p>
  
  <p>In one app the physical path on disk is c:\Websites\app_name\WebService\Reports... In this reports folder PDF files are dynamically generated and written to disk. They can be accessed via a URL such as this: </p>
  
  <pre><code>http://domain_name/Reports/xxxx.pdf
  </code></pre>
  
  <p>where /Reports is a virtual directory mapping to the physical path above. This worked fine on 2003 server &amp; IIS6 but on IIS7.5 &amp; 2008 R2 I keep getting the following error:</p>
  
  <p><strong>The resource cannot be found.</strong></p>
  
  <p><strong>Description:</strong> HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable.  Please review the following URL and make sure that it is spelled correctly.</p>
  
  <p><strong>Requested URL:</strong> /Reports/xxxx.pdf</p>
  
  <p>I have another web app that generates the reports dynamically and streams them directly to the client browser for saving to the local disk, rather than being written to disk on the server. Similar to the above example, the page that generates the report is found under path as follows:</p>
  
  <p>/Reports/Viewer.aspx</p>
  
  <p>In this case there is <strong>no</strong> virtual directory being used. The URL referenced in the browser is:</p>
  
  <pre><code>http://another_domain_name//Reports/Viewer.aspx
  </code></pre>
  
  <p>Once again I get the same error message as above... HTTP 404 - The resource cannot be found.</p>
  
  <p>I have tried all the permission settings under the sun to try and get it working but to no avail. I've use built in accounts, created new accounts with permissions from very minimal right up to full admin rights. I've also played with the new AppPool Identities with no success. It doesn't seem to matter what permissions I set specifically on the directories, or the accounts configured for the app pool or basic settings on each website itself.</p>
  
  <p>Once thing I have discovered though, is that whilst the browser is getting the HTTP 404 error, there is no record of this request appearing in the IIS log files for each website!! This is really confusing me, as I would definitely expect to see a failed 404 log entry on the requested resource. </p>
  
  <p>Something else to note, I'm running SQL Server 2008 Enterprise on this machine with Reporting services installed and enabled. It's a stretch, but could there be some contention over the /Reports path in my websites vs something else running on the machine? I'm using different bindings/host headers for each individual domain and website running on the server. </p>