场景:使用MOSS2007的协作站点模板发布的网站,使用集成身份验证,端口:80
另外扩展了一个基于表单验证的站点,Intranet区域,端口:8080
同时开启了匿名访问,数据库支持Membership框架;
要求:
对外发布匿名站点,也就是8080端口的网站,但是网络防火墙层不开启8080端口,也不做端口域名映射!无奈,只能考虑调换端口了L
方案:
- 最快联想到的,直接进入IIS,把SharePoint – 80 和SharePoint – 8080 对应的TCP端口对调,进城池同时都还是 SharePoint – 8080;接着进入管理中心-〉修改备用访问映射,将域名对应的站点8080拿掉;再次访问: http://moss 失败,提示脚本错误,或者页面空白;http://moss:8080 提示用户名和密码输入框,可以访问;结论:失败!
- 仔细看看MOSS的应用程序扩展方式后,发现方案1不可行,扩展的时候要求端口和区域(Intranet,Internet,Extranet),但对于Web Application 而言,实际上只存在80端口,如何在管理中心改变此端口呢?苦寻后无果!难道只能删除2个站点,重新附加内容数据库吗?
-
或者其它方案?
最终操作,其实也不复杂,懒得去做:
- 备份wss\VirtualDirectories\80和wss\VirtualDirectories\8080口的所有文件;
- 备份WSS_Content,直接分离一份最省事;
- 备份_layouts下的站点和虚拟目录设置;
- 删除80和8080站点,回收对应的应用程序池;
- 重新创建基于Windows 身份验证方式的8080站点集,仍然使用协作站点模板;
- 还原备份的WSS_Content数据库,覆盖第一步备份的文件到对应的目录下(80->8080,8080->80);
- 还原_layouts下的自定义站点和虚拟目录;修改备用访问映射;
- 刷新http://moss 或http://domainname 成功!匿名访问或者用户登录;