我们的大多数Web应用程序都包括Deploy.ps1 Powershell脚本。Octopus Deploy在生产部署期间使用此脚本来配置应用程序,但我们还将其用于设置开发人员的本地IIS设置。在Windows 7、Windows 8.1以及我们所有的Win2012生产服务器上都可以正常工作。
它在Windows 10上不起作用,这似乎是因为
IIS站点api.example.com已经存在,我们正在使用Powershell创建/myapp应用程序,然后将应用程序的物理路径更改为D:\ Projects \ Demo。
更新:如果该项是IIS站点,则似乎运行良好,但如果该项是Web应用程序,则失败,这让我想知道这是否可能只是提供程序中的错误。有任何想法吗?
它在Windows 10上不起作用,这似乎是因为
Set-ItemProperty
命令没有效果。没有任何错误消息,它就是不起作用。IIS站点api.example.com已经存在,我们正在使用Powershell创建/myapp应用程序,然后将应用程序的物理路径更改为D:\ Projects \ Demo。
PS C:\> IIS:
PS IIS:\> cd Sites\api.example.com
PS IIS:\Sites\api.example.com> New-WebApplication myapp -site api.example.com -PhysicalPath C:\inetpub\wwwroot
Name Application pool Protocols Physical Path
---- ---------------- --------- -------------
myapp DefaultAppPool http C:\inetpub\wwwroot
PS IIS:\Sites\api.example.com> set-itemproperty myapp -name PhysicalPath -value D:\Projects\Demo
PS IIS:\Sites\api.example.com> get-itemproperty myapp
Name Application pool Protocols Physical Path
---- ---------------- --------- -------------
demo DefaultAppPool http C:\inetpub\wwwroot
^ THIS IS WRONG!
在Windows 7上运行完全相同的命令集,您会得到相同的输出,但在最后一步中,PhysicalPath属性已按预期更改:
PS IIS:\Sites\api.example.com> get-itemproperty myapp
Name Application pool Protocols Physical Path
---- ---------------- --------- -------------
demo DefaultAppPool http D:\Projects\Demo
任何想法是什么?IIS10上有一些新的管理员限制吗?我需要修改现有Web应用程序的设置或其他某些额外提升的权限吗?更新:如果该项是IIS站点,则似乎运行良好,但如果该项是Web应用程序,则失败,这让我想知道这是否可能只是提供程序中的错误。有任何想法吗?