我使用Visual Studio 2015创建了一个名为" License Manager"发展。在某些时候,无论我做了什么,它都会被破坏并开始给我503错误。所以我创建了另一个名为" License"的虚拟目录。它工作得很好。所以我回到IIS并删除了#34; License Manager"目录,回收IIS,并尝试使用我用来创建"许可证"的完全相同的步骤再次创建它。仍然得到503错误。有没有办法清理损坏的IIS数据库(或者至少完全清除虚拟目录?)
编辑:是的,我已经卸载并重新安装了IIS。
答案 0 :(得分:1)
好的,对于可能遇到此问题的其他人:问题在于,当它是自托管的Web服务时,我为此URL做了一些ACL保留。我运行授予权限的命令是:
$user = [Environment]::UserName
netsh http add urlacl url=https://+:443/"License Manager"/"Data Model" user="$user"
netsh http add urlacl url=http://+:80/"License Manager"/"Data Model" user="$user"
现在,奇怪的是,当我切换到应用程序服务(IIS托管)时,我有一个删除这些条目的脚本,如下所示:
netsh http delete urlacl url=https://+:443/"License Manager"/"Data Model"
netsh http delete urlacl url=http://+:80/"License Manager"/"Data Model"
问题是,根目录是为您隐式创建的,因此您还需要清除根ACL列表。这解决了这个问题:
netsh http delete urlacl url=https://+:443/"License Manager"