2015年9月4日 星期五

SharePoint 2103 Folder or File Limit Lenght (SharePoint文件庫中檔案或資料夾的長度限制)

在SharePoint 2013的文件庫或是清單中,有一些比較常見的限制,例如:Item : 30,000,000 per list…等等,但是說明中並沒有列出文件庫的資料夾或是檔案的長度限制,而這邊實際測試的結果,當資料夾(包含巢狀式結構)的長度大於260的話,就無法繼續新增下去!

SPFolder

檔案同樣也是,在巢狀式結構中,檔案名稱所對應的路徑假設大於260的話

SPFile

參考資料:

Software boundaries and limits for SharePoint 2013

2015年9月2日 星期三

Office使用RMS發生The operation being requested was not performed because the user has not been authenticated.

當使用Office文件,嘗試使用Word 然後想要去使用RMS執行限制存取,可以在檔案-->資訊-->保護文件—>限制存取—>連線至數位版權管理伺服器

image

但發生了以下的錯誤訊息:The operation being requested was not performed because the user has not been authenticated.

image

解決問題的方式為將此RMS的授權和驗證的WS路徑,加入到瀏覽器的Local Intranet Zone中即可!

image

2015年9月1日 星期二

SharePoint How to avoid restart Application pools when use Update-SPSolution (SharePoint 使用Update-SPSolution時避免啟動Application pools on IIS)

開發好的SP客製化專案(以WebPart為例來說),封裝完成為WSP,在SharePoint部署上去之後,假設需要更新的話,可以使用Update-SPSolution 指令來進行WebPart的更新,指令參考如下:

Update-SPSolution -Identity MyWP.wsp -LiteralPath D:\MyWP.wsp –GACDeployment

但是此時會遇到一個問題,假設我們一開始是把此WebPart部署到SharePoint-80這一個WebApplication,但是當執行Update-SPSolution時,系統並不會只是單純的SharePoint-80單一Web Application Restart,而是會預設將此Server上所有的Application Pool全部進行:停止—>啟用,如下圖所示:

image

原因是因為所有預設開發專案並且封裝WSP時,有一個封裝屬性:ResetWebServerModeOnUpgrade預設值是:StartStop,此時將會影響所有此Server上的Web Application連帶影響其他的應用程式!

那麼該如何來解決執行Update-SPSolution時避免去重新啟動所有的Application Pool呢? 執行步驟如下:

1. 開啟客製化的專案,開啟專案中的Package.Template.xml

image

2. 設定以下三個屬性值:ResetWebServer="FALSE" 、ResetWebServerModeOnUpgrade="Recycle" 、DeploymentServerType="WebFrontEnd",如下圖所示:

image

3. 此時重新打包封裝,並且針對更新後的WSP進行部署!

Update-SPSolution -Identity MyWP.wsp -LiteralPath D:\MyWP.wsp –GACDeployment

此時就可以IIS檢視,可以發現執行Update-SPSolution並不會將Application Pool停止了! Good!

image

 

參考資料:

https://msdn.microsoft.com/en-us/library/ms412929.aspx
http://blog.mastykarz.nl/optimizing-deploying-sharepoint-packages-minimize-impact-farm-availability/