SharePoint 2007 defect
今天发现 SharePoint 有个怪怪的问题,当上传一个长度为0的文件时,系统提示一个错误, “ The file name is invalid or the file is empty. A file name cannot contain any of the following characters: \ / : * ? " < > | # { } % ~ & ”。好像只有在网页上上传时会这样。
SharePiont Explorer
想不推荐都不行的好工具。
http://blog.mondosoft.com/ontolica/archive/2007/02/15/SharePoint-Explorer-for-WSS3.aspx
下载:
SharePointExplorer_V1_5_1_For_WSS3.zip
使用命令行创建 MOSS 2007 站点
在 MOSS 上开发,测试是一件很头疼的事情,完整的配置一个站点需要的过程很长,开发环境也经常因为程序错误需要重新配置。总结了一些常用的 stsadm 命令,串起来写个安装脚本就方便多了。
1. 创建 Shared Services
对于刚刚建立的 Server Farm,一定要先创建 Shared Services,要创建 Shared Services, 要先创建两个 Web Application 用于 host Shared Services 管理站点和 My Sites,当然把它们放在一个 Web Application 也可以,不过不是太推荐这样做。此外,Windows SharePoint Search Service 和 Office SharePoint Search Service 也要启动起来,下面我们将用命令行工具 stsadm.exe 一步步完成这些工作。
1.1 创建 Shared Services Administration 站点
stsadm.exe -o extendvs -url <siteurl> -ownerlogin <siteowner username> -owneremail <site owner email> -exclusivelyusentlm -databaseserver <database server name> -databasename <database name> -donotcreatesite -apcreatenew -apidname <application pool name> -apidtype configurableid -apidlogin <application pool username> -apidpwd <application pool user password>
例如:
stsadm.exe -o extendvs -url http://myserver:8080 -ownerlogin domain\netufo -owneremail netufo@netufo.com -exclusivelyusentlm -databaseserver dbserver -databasename wss_content_8080 -donotcreatesite -apcreatenew -apidname "sharepoint - 8080" -apidtype configurableid -apidlogin domain\moss_svc -apidpwd mypassword
1.2 创建 My Sites 站点
创建 My Sites 站点的命令和上一个是一样的,只是改变到另一个端口就可以了。
1.3 启动 Windows SharePoint Search Service
stsadm.exe -o spsearch -action start -farmserviceaccount <farm service account> -farmservicepassword <farm service account password> -farmcontentaccessaccount <farm content access account> -farmcontentaccesspassword <farm content access account password> -databaseserver <database server> -databasename <database name>
例如:
stsadm.exe -o spsearch -action start -farmserviceaccount domain\moss_svc -farmservicepassword mypassword -farmcontentaccessaccount domain\netufo -farmcontentaccesspassword mypassword -databaseserver dbserver -databasename "wss_search_moss2007"
1.4 启动 Microsoft SharePoint Search Service
stsadm.exe -o osearch -action start -role IndexQuery -farmcontactemail netufo@netufo.com -farmserviceaccount domain\moss_svc -farmservicepassword mypassword
1.5 创建 Shared Services
stsadm.exe -o createssp -title <title>-url <ssp admin site url> -mysiteurl <my sites url> -ssplogin <service account name> -ssppassword <service account password> -sspdatabaseserver <database server> -sspdatabasename <database name> -searchdatabaseserver <search database server> -searchdatabasename <search database name> -indexserver <index server name> -indexlocation <index folder physical path>
例如:
stsadm.exe -o createssp -title "shared service" -url http://mossserver:8080 -mysiteurl http://mossserver:8181 -ssplogin domain\moss_svc -ssppassword mypassword -sspdatabaseserver dbserver -sspdatabasename "sharedservice_db" -searchdatabaseserver dbserver-searchdatabasename "sharedservice_search_db" -indexserver mossserver -indexlocation "c:\SharePointIndexData"
2.0 创建自己的 SharePoint 站点
2.1 创建 Web Application 和 Site Collection
stsadm.exe -o extendvs -url <site url> -ownerlogin <owner username> -owneremail <owner email> -exclusivelyusentlm -sitetemplate <site template> -databaseserver <database server name> -databasename <database name> -apcreatenew -apidname <application pool name> -apidtype configurableid -apidlogin <application pool account> -apidpwd <application pool account password>
例如:
stsadm.exe -o extendvs -url http://mossserver -ownerlogin domain\netufo -owneremail netufo@netufo.com -exclusivelyusentlm -sitetemplate BLANKINTERNET -databaseserver dbserver -databasename "wss_content_80" -apcreatenew -apidname "sharepoint - 80" -apidtype configurableid -apidlogin domain\moss_svc -apidpwd mypassword
2.2 创建 Sub Site
stsadm.exe -o createweb -url <site url> -sitetemplate <site template> -title <site title>
例如:
stsadm.exe -o createweb -url http://mossserver/mysubsite -sitetemplate BLANKINTERNET -title "My Sub Site"
自己写了两个 bat 文件方便使用,适合于单机部署,只要修改文件开头的环境变量的值然后直接调用就可以了。Download
更改 MOSS 服务帐号密码
配置 MOSS 时一般会用一个 Domain 帐号做为服务帐号,但是出于安全目的,Domain 帐号的密码最好定期更改,由于服务帐号用的地方比较多,很容易漏改,今天就让我遇到了。
Microsoft 的 IT support 再维护服务器时,使用了一个内部工具来更改密码,可是还是有地方漏了,导致 Excel Service 无法工作。
其实微软有文章描述了哪些地方是需要更新的,按照这个步骤一个一个修改就不容易出错了。
Change passwords used for administration accounts (Office SharePoint Server) http://technet2.microsoft.com/Office/en-us/library/4f52688f-7c27-41b7-8e28-c532d0e93e4d1033.mspx?mfr=true
在 Windows Xp 或 Vista 上安装 Windows SharePoint Services 3.0 Tools
Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions 只能安装在 Windows 2003 Server 下,但我的 OS 是 Windows Xp,安装程序检查时通不过,没办法,只好想个办法骗骗它了。
在注册表中建立这个键值就可以了:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0]
"Sharepoint"="Installed"
或者下载这个注册表文件导入也可以。
Excel Services Compatibility Checker
MOSS 2007 里的 Excel Services 可以十分方便的把 Excel 文件发布到网页上,不过由于环境限制,有很多 Excel 的功能是不能使用的,否者显示时系统直接就显示一个错误信息。麻烦的是系统提供的信息十分笼统,根本不知道是 Excel 文件里什么出了问题,结果每次只好把 Excel 文件改来改去传上去试,用户访问时经常看到错误页面也很不爽。
还好有好人做了个 Excel 的插件可以检查 Excel 文件的兼容性。到这里可以下载
顺便给一个描述 Excel Services 支持和不支持的特性的链接
http://office.microsoft.com/en-us/sharepointserver/HA101054571033.aspx?pid=CH101768471033
顺便感谢烟友 Dafna 提供这个工具的地址。
本地下载链接 version 0.1.914.0
开始研究 Performance Point Server
刚开始看,名字怪怪的,其实是一个 BI 的工具,现在已经出到 CTP3 了。到 connect.microsoft.com 下了一个装好的虚机看了看,跟 Office 集成得很好。
自己也从头装了一遍,安装步骤:
- Windows 2003 (with sp2)
- Sql Server 2005 (with sp2)
- SharePoint Portal Server 2007
- SharePoint Designer 2007
- Office 2007
- Performance Point Server 2007 Planning Server CTP2
- ASP.NET AJAX
- Performance Point Server 2007 Monitoring and Analytics Server CTP3
再加上按照 Guide 建了个站点,Business Model 和 Report, Template 一堆建起来,一共花了 2 天时间,真是要命。
An unhandled exception occurred in the user interface.Exception Information: OSearch ( XXXXX)
安装 SharePoint 2007,启动 Office Office Server Search 服务时,系统报错:An unhandled exception occurred in the user interface.Exception Information: OSearch (ServiceAccount),原来是因为填服务帐号时没加上 Domain。