Windows Server 2012通過PowerShell命令安裝IIS8.0全功能詳細教程
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
昨天中午來了一個客戶,說他的Windows Server 2012系統不能安裝IIS,問客戶有啥錯誤,客戶說無任何的錯誤提示,這就很尷尬了,我說我來試試,我嘗試了幾遍,也確實沒有任何的錯誤,任何的日志信息也沒有,還真是牛逼了,你說沒有錯誤,瞅瞅下面,還是有一段錯誤,那是啥鬼錯誤呢?“你可以關閉此向導而不中斷正在證行的任務,請依次單擊命會欄中的通知和任務詳信息”這是啥鬼錯誤提示,毛線用也沒有;具體如下圖;
琢磨了一下,Windows Server 2012系統是有PowerShell的,那用PowerShell是否可以搞定IIS8.0呢,說動就動,我們就來操作下;操作之前我們先來說說啥是PowerShell;
什么是PowerShell?
PowerShell是微軟公司開發的一種命令行腳本環境,通過PowerShell可以使用簡單的腳本完成很多復雜的操作,特別適合服務器操作系統的管理。除了可以用常規的圖形界面方法來安裝IIS 8.0之外,PowerShell也提供了一套簡便快速的安裝方法。
PowerShell安裝IIS8.0步驟如下:
1、首先,我們點擊系統左下角的PowerShell圖標,進入命令行環境,如下圖;
2、接下來,我們鍵入一行腳本來查看IIS是否安裝過。 get-windowsfeature web* 命令的含義通俗易懂,就是獲取以web開頭的系統安裝包,因為IIS的安裝包就是全部以web開頭的。運行結果如下。
我們注意到,這些安裝包前面的方框沒有任何標記,說明這些組件都尚未安裝。下面我們開始執行IIS的安裝腳本。
3、鍵入以下PowerShell腳本開始執行IIS 8.0的安裝。
install-windowsfeature web-server
web-server就是上圖中的第一項名稱,也就是Web服務器(IIS)這個角色。注意PowerShell腳本是不區分大小寫的,所以我這里為了方便起見,全部使用了小寫字母的命令。安裝后提示 Success 就是安裝成功;
4、然后再用get-windowsfeature web*查看下是否安裝成功了。
參照以上的圖,我們可以看到,只是安裝了部分,并沒有全部安裝,其實很多時候我們一定要安裝全部的IIS功能,不全部安裝的話,總會有這樣那樣的問題;我們還是要全部安裝,那如何全部安裝呢?只需要一些代碼即可,具體如下;
$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尚未注冊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已經注冊過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已經注冊過aspnet_isapi.dll,且已啟用" } } RegisterAndEnableIsapi
以上命令執行的時候,我們會看到過程,具體過程看如下圖解;
以上圖,就是說嘛整個過程安裝完成了,我們再來用命令看看安裝是否完整;依然鍵入命令 get-windowsfeature web* 來查看,具體圖如下;其實我們根據下圖來看,已經全部完成安裝;
剛才用命令查看了了是否安裝成功以及全,依然進入我們圖形化安裝界面看下,根據下圖我們依然可以看出,安裝非常完整,很是OK~~棒!
延伸閱讀:PowerShell安裝IIS服務器各種命令
安裝IIS服務器
install-windowsfeature web-server
安裝.NET應用程序開發
install-windowsfeature web-asp,web-asp-net,web-asp-net45
安裝IIS管理控制臺
install-windowsfeature web-mgmt-console
檢查有沒有安裝成功
get-windowsfeature web*
終極打包安裝
install-windowsfeature web-server,web-asp,web-asp-net,web-asp-net45,web-mgmt-console
安裝FTP相關? ? FTP服務分為服務和拓展
安裝FTP服務器
install-windowsfeature web-ftp-server
安裝FTP服務
install-windowsfeature web-ftp-service
安裝FTP拓展
install-windowsfeature web-ftp-ext
檢查有沒有安裝成功
1get-windowsfeature web*
終極打包安裝
install-windowsfeature web-ftp-server,web-ftp-service,web-ftp-ext
寫在最后:
使用PowerShell安裝windows功能組件比直接鼠標點擊的速度快,命令行輸入后就可以掛機,等待安裝成功即可;
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!