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号又微信号)右上方扫一扫可加博主微信
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!