0

我已将我的项目部署到 Azure 云服务,但另外我必须安装应用程序请求路由 (ARR)。

.ps1 PowerShell 命令的和平:

if( Get-Service was ) {
        Write-Host "Stopping IIS and WAS..."
        Stop-Service was -Force
    }


    $filepath="%temp%\arr.msi"
    $process = (Start-Process -FilePath msiexec -ArgumentList /i, $filepath, /qn -Wait).ExitCode

    Write-Host $process
    if( Get-Service was ) {
        Start-Service was,w3svc -Verbose
    }

输出:

正在下载 MSI 包... 正在下载 MSI 包:D:\Users\BUTTER~1\AppData\Local\Temp\2\arr.msi 已下载... 完成。正在执行安装... 正在停止 IIS 和 WAS... 1619 完成 详细:在目标“万维网发布服务 (w3svc)”上执行“启动服务”操作。详细:在目标“Windows Process Activation Service (was)”上执行“Start-Service”操作。

没有错误,但它没有安装 ARR。谁能帮忙?

4

1 回答 1

5

我找不到直接通过 PowerShell 执行此操作的好方法。如果您不介意使用 Chocolatey,您可以通过 Web 平台安装程序命令行 (WebPICMD) 完成所有操作,例如:

#Download and install Chocolatey and through Chocolatey install WebPICMD
iex ((new-object net.webclient).DownloadString("https://chocolatey.org/install.ps1"))
cinst webpicommandline

#Install Url Rewrite and ARR
$webPiProducts = @('UrlRewrite2', 'ARRv3_0') 
WebPICMD /Install /Products:"$($webPiProducts -join ',')" /AcceptEULA

此处有关 WebPICMD 的更多信息:http ://www.iis.net/learn/install/web-platform-installer/web-platform-installer-v4-command-line-webpicmdexe-rtw-release

Chocolatey 的灵感来自这篇博文:http ://www.tugberkugurlu.com/archive/script-out-everything-initialize-your-windows-azure-vm-for-your-web-server-with-iis-web -部署和其他东西

于 2013-11-04T14:53:35.663 回答