Windows Server 2012通過(guò)PowerShell命令安裝IIS8.0全功能詳細(xì)教程
[重要通告]如您遇疑難雜癥,本站支持知識(shí)付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
昨天中午來(lái)了一個(gè)客戶(hù),說(shuō)他的Windows Server 2012系統(tǒng)不能安裝IIS,問(wèn)客戶(hù)有啥錯(cuò)誤,客戶(hù)說(shuō)無(wú)任何的錯(cuò)誤提示,這就很尷尬了,我說(shuō)我來(lái)試試,我嘗試了幾遍,也確實(shí)沒(méi)有任何的錯(cuò)誤,任何的日志信息也沒(méi)有,還真是牛逼了,你說(shuō)沒(méi)有錯(cuò)誤,瞅瞅下面,還是有一段錯(cuò)誤,那是啥鬼錯(cuò)誤呢?“你可以關(guān)閉此向?qū)Ф恢袛嗾谧C行的任務(wù),請(qǐng)依次單擊命會(huì)欄中的通知和任務(wù)詳信息”這是啥鬼錯(cuò)誤提示,毛線(xiàn)用也沒(méi)有;具體如下圖;
琢磨了一下,Windows Server 2012系統(tǒng)是有PowerShell的,那用PowerShell是否可以搞定IIS8.0呢,說(shuō)動(dòng)就動(dòng),我們就來(lái)操作下;操作之前我們先來(lái)說(shuō)說(shuō)啥是PowerShell;
什么是PowerShell?
PowerShell是微軟公司開(kāi)發(fā)的一種命令行腳本環(huán)境,通過(guò)PowerShell可以使用簡(jiǎn)單的腳本完成很多復(fù)雜的操作,特別適合服務(wù)器操作系統(tǒng)的管理。除了可以用常規(guī)的圖形界面方法來(lái)安裝IIS 8.0之外,PowerShell也提供了一套簡(jiǎn)便快速的安裝方法。
PowerShell安裝IIS8.0步驟如下:
1、首先,我們點(diǎn)擊系統(tǒng)左下角的PowerShell圖標(biāo),進(jìn)入命令行環(huán)境,如下圖;
2、接下來(lái),我們鍵入一行腳本來(lái)查看IIS是否安裝過(guò)。 get-windowsfeature web* 命令的含義通俗易懂,就是獲取以web開(kāi)頭的系統(tǒng)安裝包,因?yàn)镮IS的安裝包就是全部以web開(kāi)頭的。運(yùn)行結(jié)果如下。
我們注意到,這些安裝包前面的方框沒(méi)有任何標(biāo)記,說(shuō)明這些組件都尚未安裝。下面我們開(kāi)始執(zhí)行IIS的安裝腳本。
3、鍵入以下PowerShell腳本開(kāi)始執(zhí)行IIS 8.0的安裝。
install-windowsfeature web-server
web-server就是上圖中的第一項(xiàng)名稱(chēng),也就是Web服務(wù)器(IIS)這個(gè)角色。注意PowerShell腳本是不區(qū)分大小寫(xiě)的,所以我這里為了方便起見(jiàn),全部使用了小寫(xiě)字母的命令。安裝后提示 Success 就是安裝成功;
4、然后再用get-windowsfeature web*查看下是否安裝成功了。
參照以上的圖,我們可以看到,只是安裝了部分,并沒(méi)有全部安裝,其實(shí)很多時(shí)候我們一定要安裝全部的IIS功能,不全部安裝的話(huà),總會(huì)有這樣那樣的問(wèn)題;我們還是要全部安裝,那如何全部安裝呢?只需要一些代碼即可,具體如下;
$features = get-windowsfeature web-* foreach($item in $features) { if($item.installed -eq $false) { Write-Host "安裝:$item.displayname" $item | add-windowsfeature } } function RegisterAndEnableIsapi { $isapiPath ="$env:windir\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" $isapiConfiguration = get-webconfiguration "/system.webServer/security/isapiCgiRestriction/add[@path='$isapiPath']/@allowed" if($null -eq $isapiConfiguration) { Write-Host "IIS尚未注冊(cè)aspnet_isapi.dll" $tmpPath="" $tmpPath = "$env:windir\Microsoft.NET\Framework\v4.0.30319\" set-location $tmpPath .\aspnet_regiis.exe -i $isapiConfiguration = get-webconfiguration "/system.webServer/security/isapiCgiRestriction/add[@path='$isapiPath']/@allowed" } if($isapiConfiguration.Value -eq $false) { Write-Host "IIS已經(jīng)注冊(cè)過(guò)aspnet_isapi.dll,但未啟用" set-webconfiguration "/system.webServer/security/isapiCgiRestriction/add[@path='$isapiPath']/@allowed" -value true if(Is64Bit) { set-webconfiguration "/system.webServer/security/isapiCgiRestriction/add[@path='$env:windir\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll']/@allowed" -value true } Write-Host "isapi已啟用" } else { Write-Host "IIS已經(jīng)注冊(cè)過(guò)aspnet_isapi.dll,且已啟用" } } RegisterAndEnableIsapi
以上命令執(zhí)行的時(shí)候,我們會(huì)看到過(guò)程,具體過(guò)程看如下圖解;
以上圖,就是說(shuō)嘛整個(gè)過(guò)程安裝完成了,我們?cè)賮?lái)用命令看看安裝是否完整;依然鍵入命令 get-windowsfeature web* 來(lái)查看,具體圖如下;其實(shí)我們根據(jù)下圖來(lái)看,已經(jīng)全部完成安裝;
剛才用命令查看了了是否安裝成功以及全,依然進(jìn)入我們圖形化安裝界面看下,根據(jù)下圖我們依然可以看出,安裝非常完整,很是OK~~棒!
延伸閱讀:PowerShell安裝IIS服務(wù)器各種命令
安裝IIS服務(wù)器
install-windowsfeature web-server
安裝.NET應(yīng)用程序開(kāi)發(fā)
install-windowsfeature web-asp,web-asp-net,web-asp-net45
安裝IIS管理控制臺(tái)
install-windowsfeature web-mgmt-console
檢查有沒(méi)有安裝成功
get-windowsfeature web*
終極打包安裝
install-windowsfeature web-server,web-asp,web-asp-net,web-asp-net45,web-mgmt-console
安裝FTP相關(guān)? ? FTP服務(wù)分為服務(wù)和拓展
安裝FTP服務(wù)器
install-windowsfeature web-ftp-server
安裝FTP服務(wù)
install-windowsfeature web-ftp-service
安裝FTP拓展
install-windowsfeature web-ftp-ext
檢查有沒(méi)有安裝成功
1get-windowsfeature web*
終極打包安裝
install-windowsfeature web-ftp-server,web-ftp-service,web-ftp-ext
寫(xiě)在最后:
使用PowerShell安裝windows功能組件比直接鼠標(biāo)點(diǎn)擊的速度快,命令行輸入后就可以?huà)鞕C(jī),等待安裝成功即可;
問(wèn)題未解決?付費(fèi)解決問(wèn)題加Q或微信 2589053300 (即Q號(hào)又微信號(hào))右上方掃一掃可加博主微信
所寫(xiě)所說(shuō),是心之所感,思之所悟,行之所得;文當(dāng)無(wú)敷衍,落筆求簡(jiǎn)潔。 以所舍,求所獲;有所依,方所成!