已经相当久没有写Blog了,差不多大半年的时间都在作SharePoint相关工作,给一家国企部署企业门户,做了大量的定制化开发,今天突然想写点东西,目前部署工作进入尾声,那就谈一谈我在部署SharePoint的一些个人体会吧,因为不知道自己具体要说什么,也没有重点,那就给这篇Blog命名为“胡言乱语”吧。
我们在部署过程中碰到的第一个问题就是SharePoint的界面风格与用户的期望有很大差距,后来采用了自定义模板的办法,因为对于企业的各部门站点用户要求一致。而且这种方法让我们后期维护也省了不少力气,不过前提是千万不要用FrontPage来修改这些用模板生成的站点,这样我们在模板做的修改才能应用到各个站点中,否则要一个站点一个站点的单独修改。
SharePoint 2003的另外一个问题就是不管当前用户是否有权限都列出所有的功能链接,只有在操作的时候才知道是否有权限,这样让用户很疑惑,增加了我们的维护工作量,因此我们在_layouts下部署了一个集成的应用程序,作了一套通过树形视图来浏览文档库和列表的界面,这套界面的功能按钮都根据用户权限适当显示。后来我感觉到其实他的这套文档库浏览界面我们也完全可以在模板中定制好。
在做集成的应用程序和相关WebPart开发时,发现当前用户往往需要做他没有权限的操作,开始的时候我们通过在Web.config中定义一个有管理员权限的用户的用户名和密码,这样impersonate该用户来做相关操作,但是SharePoint仍然无法成功完成操作,后来查一些资料说impersonate不能在SharePoint中成功,需要impersonnate之后然后在新的appdomain中完成操作。后来对impesonate进行了更改,通过impersonnate application pool的域用户之后然new一个appdomain,这样就只需要维护application pool的用户名和密码就可以了。
修改ows.js能给我们满足用户的一些BT要求很有帮助,当然我们首先是把文档库中下拉列表菜单中的很多菜单项去掉,只留下必须的。另外增加自定义菜单项,比如提供将文档复制或移动到当前站点下的其他文档库的功能,点击该菜单项之后show一个目标文档库选择器网页对话框,点击确定后移动或复制文档。
关于SQL Server 2005数据库迁移,随着用户数量的上升单服务器配置已经显得紧张,于是迁移数据库到数据库服务器上。迁移有两种方案,一种是官方提供的用户SharePoint备份恢复工具,另外一种是在SPS管理中心修改组件服务器和内容服务器为新的服务器,取消组件分配,删除门户网站,断开配置数据库,然后在新的数据库服务器上恢复SITE、PROF、SERV三个数据库,将SharePoint管理员加入SQL login中,分配dbcreator 和securityadmin服务器角色,并将其指定为这三个数据库的owner,重新将配置数据库建立到新的数据库服务器上,分配组件配置,恢复门户网站。两种方法的区别之一是官方方法不会保留管理路径中的排除路径信息而后一种方法会。
就这么多了,接到新任务是研究下SharePoint 2007 Search,看来SharePoint跟我缘分不浅啊,还没摸过2007,不知道会有多少新奇玩意儿。