SharePoint升级后错误,解决方案

近日同学所在某公司的SharePoint网站在打了补丁之后挂掉了(登陆不能,登陆页面也不出现,用的LDAP认证),然后他自己鼓捣出来之后,在我威逼(没有利诱)之下,把他关于SharePoint的部分笔记发给我了,贴到这里给大家看看,可能也会有人遇到类似的问题。

他们用的是WSS3.0 + LDAP认证方式,https加密传输,主要用于做文档管理,没有任何自己开发的代码在其中。

首先是关于崩溃问题(笔记记载如下):

前两天出了一点小故障,问题描述要比解决方案复杂得多。。
开始可以出现登录页面,但是登录上去就抱错,说找不到default页面,然后看到winows update里面有个sharepoint的升级,就运行了。重启了机器后sharepoint的务就挂了。。。
唯一能想到的修复方法就是运行那个sharepoint配置向导,但是第9步会说spadmin服务没有起,十分伤心。就扔下不管了。
今天有人要用了,只好硬着头皮看看,发现这次配置向导竟然通过了。唉,微软的东西就是搞不懂,不过网站还是起不来,就乱改了一通iis配置,然后又用配置向导修复了好几次,终于可以出现登录页面了,但总说我登录不上。研究了半天估计是ldap配置出了问题,果然一检查是把上面2的web.config给覆盖了,于是恢复了就好了。。。
现在想一想当初可能就是升级后把一些配置给我覆盖了吧。。

然后是关于WSS3.0如何使用LDAP认证的问题:

基本按照网上的一些步骤配置,不过有些改动,详细内容可以参考这个网页:
http://www.sharepointblogs.com/helloitsliam/archive/2006/08/15/10027.aspx
这里只说一下具体做法
1. 从一个装了moss2007的机器上copy一个microsoft.office.server.dll文件放在桌面上,在C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI目录,然后将这个文件拖进c:\WINDOWS\assembly目录,注意一定要拖进。。
2. 修改sharepoint管理中心网站和web网站的web.config文件,默认在c:\Inetpub\wwwroot\wss\VirtualDirectories\80(和另一个管理端口)
在<machineKey>这行和</system.web>之间加入:
    <membership defaultProvider="LdapDemoMembership">
      <providers>
        <add name="LdapDemoMembership" type="Microsoft.Office.Server.Security.LDAPMembershipProvider, Microsoft.Office.Server, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71E9BCE111E9429C" server="xxx.xxx.xxx" port="389" useSSL="false" useDNAttribute="false" userNameAttribute="uid" userContainer="ou=xxx,dc=xxx,dc=xxx,dc=xxx" userFilter="(ObjectClass=*)" scope="Subtree" otherRequiredUserAttri
butes="uid,cn" />

      </providers>
    </membership>
保存关闭。注意useDNAttribute="false"一句比较重要,搜索的资料很多没有说,否则会连不上。
3. 打开sharepoint的管理中心(可以从开始->管理工具->),应用程序管理,验证提供程序,编辑现有的默认验证,验证类型选中表单,这里要打开一下匿名的权限(注意稍后再给禁掉),成员身份提供程序要和前面添加的一致,如LdapDemoMembership,角色管理不用填,最下面启用客户端集成,然后保存。
4. 手动添加一个管理员帐号(过后可以再删掉),还是应用程序管理,Web应用程序的策略,添加用户,区域选择默认(或自己设的网站区域),这是用户里应该能够识别ldap服务器上的所有用户,给一个完全控制权限。
5. 访问sharepoint的web网站,会出现登录框,用刚添加权限的帐号登录,点右上网站操作,网站设置,高级权限设置里面的匿名权限打开。然后回去关闭掉4中打开的匿名访问。这样可以做到需要ldap认证,但默认用户有一个访问者的权限,通过更改sharepoint网站中的访问者权限就可以限制普通用户的权限(已经很低了)。

关于https的设置:

控制面板,添加删除windows组件里先添加证书服务,随便起个名字。
管理您的服务器,管理此应用程序服务器,对sharepointweb端和后台管理网站都要做:属性,目录安全性,服务器证书,一路下去,生成一个txt文件。
更改默认网站的端口,比如8080,启动。
浏览器中访问http://localhost:8080/certsrv,申请一个证书,高级申请证书,使用base64...,将txt文件中begin和end之间的部分copy过去,提交。
管理工具,证书颁发机构,挂起的申请,改刚才的id颁发证书。
再登录刚才localhost网址选查看挂起的证书申请的状态,可以下载DER编码的证书保存。
回到开始的服务器网站属性,再选择服务器证书,处理挂起的请求并安装证书。
完毕后就可以https访问了。最后在目录安全性,编辑里勾上要求安全通道和128位加密。

都是原文照搬过来的,我是不是太懒了。。。。

准备弄完手头的连载之后开始写一个自定义列表字段的专题,或者各位看客有啥想了解的关于开发方面的(除了工作流-.-)东东也可以提一下,嗯嗯

你可能感兴趣的:(SharePoint)