SharePoint 2010开发最佳实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.5 使用Windows PowerShell管理SharePoint

本节将介绍如何使用Windows PowerShell创建Web应用程序和网站集。

2.5.1 使用PowerShell创建Web应用程序

使用PowerShell创建Web应用程序非常简单。

$name="Web Application from PowerShell"
$port=10000
$url="http://win-i53t3ji4m13"
$appPoolName="SharePoint - 10000"
$appPoolAccount="win-i53t3ji4m13\SPService10000"
New-SPWebApplication -Name $name -Port $port -URL $url -ApplicationPool $appPoolName-ApplicationPoolAccount $appPoolAccount

上述脚本首先设置了一些创建新的Web应用程序必需的信息,例如名字、端口号、URL、新的应用程序池名字、即将用在新的应用程序池上的服务账号,然后调用SharePoint PowerShell命令New-SPWebApplication创建Web应用程序。

大家可能注意到为什么创建新的Web应用程序时使用的应用程序池账号只需要输入用户名而不需要输入密码,实际上这是在SharePoint 2010里的一个新功能托管账号(Managed Account),托管账号通过SharePoint进行管理,密码加密后存储在配置数据库。如果需要通过PowerShell创建WebApplication,需要确认使用的应用程序池账号是托管账号。可以到管理中心->安全->配置托管账号页面查看已经配置的托管账号,也可以在此画面将需要使用的账号配置为托管账号。

更多信息:不要把管理员账号配置为应用程序池账号,使用单独的账号来配置应用程序账号以避免权限过大引起的安全问题。

上述代码在ISE环境下按F5键执行后,可在管理中心Web应用程序查看画面看到创建成功的应用程序,如图2-17所示。

图2-17 Web应用程序列表

2.5.2 使用PowerShell创建网站集

使用如下命令创建网站集:

$title="Creating site collection from PowerShell"$url="http://win-i53t3ji4m13:10000"
$owner="win-i53t3ji4m13\Administrator"
$template="STS#1"
# delete target site collection if it exists
$targetSite=Get-SPSite | Where-Object {$_.Url -eq $url}
if ($targetSite -ne $null){
      Remove-SPSite -Identity targetSite -Confirm:$false
}
# create new site collection
New-SPSite -URL $url -Name $title -OwnerAlias $owner -Template $template

命令执行的时候先判断站点集是否存在,如果存在先删除。另外-Template指定了创建站点时使用的模板。表2-2是常用的模板以及对应的模板编号列表。

表2-2 常用站点模板

使用F5键执行命令后查看网站,如图2-18所示。

表2-18 使用PowerShell创建的网站集