簡體   English   中英

如何使用appcmd.exe在IIS上為每個站點設置環境變量?

[英]How to set environment variables per site on IIS using appcmd.exe?

在IIS管理器上為每個站點設置環境變量非常容易:

IIS

我正在尋找使用appcmd.exe的方法,所以我可以在我的安裝腳本中包含它。

我得到的最接近的是:

C:\>C:\Windows\System32\inetsrv\appcmd.exe set config "dashboard" -section:system.webServer/aspNetCore /environmentVariables.[name='foo',value='bar'] /commit:apphost

- >儀表板是我網站的名稱。

但是此命令返回此錯誤:

錯誤(消息:找不到請求的集合元素。)

您可能已經想出來了,但這種格式應該有效:

appcmd.exe set config "dashboard" -section:system.webServer/aspNetCore /+"environmentVariables.[name='foo',value='bar']" /commit:apphost

如果您正在使用VSTS進行發布管理。 您可以使用最大500字節的內聯PowerShell腳本。 以下腳本將在插入之前刪除變量,以防止每次添加相同的條目。

param($website,$var,$value,$Once=$false)
$cmd='c:\windows\system32\inetsrv\appcmd.exe'
$c=(&$cmd list config $website -section:system.webServer/aspNetCore)
if($c -like "*$var*" -and $Once -eq $true){return;}
if($c -like "*$var*"){&$cmd set config $website -section:system.webServer/aspNetCore /-"environmentVariables.[name='$var',value='$value']" /commit:apphost}
&$cmd set config $website -section:system.webServer/aspNetCore /+"environmentVariables.[name='$var',value='$value']" /commit:apphost

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM