2016-04-08 10 views
16

ほとんどのWebアプリケーションには、Deploy.ps1 Powershellスクリプトが含まれています。 Octopus Deployは、これを使って運用環境の展開中にアプリケーションを構成しますが、これを使って開発者のローカルIIS設定をセットアップします。 Windows 7、Windows 8.1、およびすべてのWin2012プロダクションサーバーでは正常に動作します。Set-ItemPropertyがWindows 10のIISアプリケーションに影響しないのはなぜですか?

これはWindows 10では機能しません。これは、Set-ItemPropertyコマンドレットが効果がないためです。何もエラーメッセージや何も、それは何もしません。

IISサイトapi.example.comがすでに存在している、と私たちは/ myappのアプリケーションを作成してからDに、アプリケーションの物理パスを変更するにはPowerShellを使用している:実行\プロジェクト\デモ

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アプリケーションなどの設定を変更するために必要な権限の昇格

UPDATE:項目がIISサイトですが、アイテムが、これは単にプロバイダのバグかもしれないなら、私は思ってしまうのWebアプリケーションである場合、失敗した場合、正常に動作するようです。何か案は?

+0

これはバグですので、投票してください。 https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/15077202-make-propeties-name-case-insensitive-for-creating – zerocool18

答えて

15

私は理由を知りませんが、設定したいプロパティの最初の文字は小文字である必要があります e。 g。 physicalPath

これは動作します:

set-itemproperty myapp -name physicalPath -value D:\Projects\Demo 

は私にはバグのように思えるが、あなたの他のWindows環境では、このように、有効な回避策である必要があり、この表記(最初の文字の小文字)も動作します。

-1

これは(セット場所なし)私の作品:

Set-ItemProperty IIS:\sites\$sitename\$appName -Name applicationPool -Value $appPoolName 
3

私はあなたの問題を再現することができました。 Set-ItemProperty私はサイトで働いていた場合私のために働いた。

これらのコマンドレットは、WebAdministrationモジュールからのものであり、完全なマニュアルを確認しました。彼らは関連する例のウェブサイトだけを使用しているようです。まだ確認していない場合は、次のようにチェックすることもできます。Web Administration (IIS) Provider for Windows PowerShell

あなたが指摘したように、バグかもしれません。私はここでこれを報告することをお勧めします:Microsoft Connect - PowerShell

+0

Connectはhttps://windowsserver.uservoice.com/forums/に置き換えられます。 301869-powershell –

関連する問題