以编程方式更新SharePoint默认备用访问映射

问题描述 投票:2回答:2

我正在安装了SharePoint Services 3.0的IIS服务器上启用HTTPS,并且希望以编程方式更新单个Web应用程序和管理中心实例(均在同一台计算机上)的默认备用访问映射。这是我到目前为止的代码(Powershell),它为HTTPS添加了一个映射,但是在尝试删除原始代码时却出现了错误。

这是我的代码:

[void][system.reflection.assembly]::LoadWithPartialName("Microsoft.Sharepoint")

$SPWebServiceCollection = new-object Microsoft.SharePoint.Administration.SPWebServiceCollection ([Microsoft.SharePoint.Administration.SPFarm]::Local)

    foreach ($SPWebService in $SPWebServiceCollection) {

        foreach ($webApplication in $SPWebService.WebApplications) {

            Write-Host ('Updating {0}' -f $webApplication.Name)

            foreach ($alternateUrl in $webApplication.AlternateUrls) {

                $incomingUrl = [System.URI] $alternateUrl.IncomingUrl

                $newURL = 'https://{0}{1}' -f  $incomingUrl.Authority, $incomingUrl.PathAndQuery

                $newAltURL = New-Object Microsoft.SharePoint.Administration.SPAlternateUrl ($newURL, $alternateUrl.UrlZone)

                $webApplication.AlternateUrls.Add($newAltURL)

                $webApplication.AlternateUrls.Update($true)

                $webApplication.AlternateUrls.Remove($alternateUrl) #Throws Exception

                $webApplication.AlternateUrls.Update($true)
           }
        }
    }

这是我尝试删除原始文件时遇到的错误:

使用“ 1”参数调用“删除”的异常:“ SharePoint管理框架中的对象,“ SPAlternateUrlCollection名称= SharePoint-1000父= SPFarm名称= SharePoint#Config_8ddd3701-a332-4e79-98e4-fa11c1b6c17c”删除,因为其他对象依赖它。更新所有这些依赖项以指向null或其他对象,然后重试此操作。依赖项如下:

SPWebApplication名称= SharePoint-1000父= SPWebService

但是,我不确定该如何处理异常提示。

sharepoint api powershell alternate-access-mappings
2个回答
0
投票
啊...看来您正在尝试删除Web服务正在使用的URL ...

0
投票
事实证明,存在另一种我忽略的默认条目的方法:
© www.soinside.com 2019 - 2024. All rights reserved.