IIS自动发布脚本
目的:使用powershell脚本的方式实现自动化在iis部署网站的功能。
1.使用管理员身份运行powershell
2.脚本如下
auto_iis_deploy.ps1
#iis自动部署脚本 param( [string]$siteName = "default", [string]$port = "80" ) Write-Host "siteName:$siteName,port:$port" $physicalPath="d:\www\$siteName" Import-Module WebAdministration Write-Host "Setting up IIS" if(!(Test-Path $physicalPath)) { mkdir $physicalPath } #创建站点 Write-Host "create or update site.." if((Test-Path IIS:\Sites\$siteName)) { Remove-Website $siteName } New-Website -Name $siteName -PhysicalPath $physicalPath -ApplicationPool $siteName -Port $port -ErrorAction Stop #创建应用程序池 Write-Host "create appPool or next step.." if(!(Test-Path IIS:\AppPools\$siteName)) { New-Item -path IIS:\AppPools\$siteName } Set-ItemProperty IIS:\AppPools\$siteName managedRuntimeVersion v4.0 #停止应用程序池 Write-Host "stop appPool" $appPool=Get-WebAppPoolState -Name $siteName if($appPool -eq "Started") { Stop-WebAppPool -Name $siteName } #解压文件 #Write-Host "unzip the source file" #$sourceFile=$siteName+".zip" #[System.IO.Compression.ZipFile]::ExtractToDirectory($sourceFile,$siteName) #启动网站 Write-Host "start website" Start-Website -Name $siteName #启动应用程序池 Write-Host "start webAppPool" Start-WebAppPool -Name $siteName Write-Host "$siteName successfully started"
这里设置的是一个空站点,可以自己设置文件路径;这里的路径是 $physicalPath 变量的值。
3.运行脚本
.\auto_iis_deploy.ps1 -siteName myWeb -port 8083
4.效果图
参考网址:
https://cloud.tencent.com/developer/article/1462776
https://cloud.tencent.com/developer/article/1047718
https://docs.microsoft.com/en-us/powershell/module/webadministration/?view=win10-ps