Removing phantom application folders from website configuration in IIS

Photo of author
Written By Jan Reilink

Windows Server systems administrator & enthusiast.

Thank you Ronald as I needed exactly this today. Here is how to remove phantom application folders from websites in IIS using PowerShell.

Today I wanted to remove application folders from the website configuration in IIS whose physical path on the filesystem was removed. E.g when the application folder “/test1” in the website should point to z:\sites\\www\test1 but was removed.

foreach( $server in (Get-ADComputer -Filter {(enabled -eq $True)} -SearchBase "OU=Webservers,$((Get-ADDomain).ComputersContainer)").DNSHostname) { Invoke-Command -ComputerName $server -ScriptBlock { Import-Module WebAdministration Write-Host $Using:server; Get-ChildItem IIS:\Sites | foreach { $site = $_; # Get all applications without existing physical path $applications = Get-ChildItem $site.PsPath | Where-Object { $_.NodeType -eq "application" -and (Test-Path $_.PhysicalPath) -eq $False }; # List all phantom applications $applications | FT # Remove applications $applications | Remove-WebApplication -Site $site.Name } } }
Code language: PowerShell (powershell)


Remember to Import-Module WebAdministration on Windows Server 2012 R2 and up instead of Add-PSSnapin WebAdministration. Get more Get-ADComputer examples from here.

This post showed you an easy way to remove orphaned IIS web applications for IIS administrators.

Did you like: Removing phantom application folders from website configuration in IIS

Then please, take a second to support Sysadmins of the North and donate!

Your generosity helps pay for the ongoing costs associated with running this website like coffee, hosting services, library mirrors, domain renewals, time for article research, and coffee, just to name a few.

Hi! Join the discussion, leave a reply!