SharePoint 2016网站非www域名访问时ScriptResource.axd重定向过多致搜索故障求助
这是SharePoint环境里很常见的域名映射与资源加载问题,结合你的描述,我整理了几个针对性的排查和解决步骤,你可以逐一尝试:
1. 确认IIS站点绑定配置
- 打开IIS管理器,找到你的SharePoint站点,检查绑定设置:
- 确保
https://ghcscw.com已经添加为绑定项,且和https://www.ghcscw.com使用相同的应用程序池 - 验证绑定的SSL证书是否包含两个域名(www.ghcscw.com和ghcscw.com),或者是通配符证书(*.ghcscw.com),证书不匹配会直接导致资源请求异常
- 确保
2. 配置SharePoint备用访问映射(AAM)
SharePoint严重依赖AAM来处理不同域名的请求路由,这通常是这类问题的核心原因:
- 登录SharePoint管理中心,进入系统设置 -> 配置备用访问映射
- 选中你的目标Web应用程序,点击编辑公共URL
- 在对应区域(比如默认区域)的输入框中,添加
https://ghcscw.com,确保它和https://www.ghcscw.com属于同一区域 - 保存设置后,在服务器命令行执行
iisreset重启IIS服务,让配置生效
3. 验证ScriptResource.axd的处理程序映射
- 在IIS管理器中进入你的SharePoint站点,打开处理程序映射
- 查找
ScriptResource.axd对应的处理程序System.Web.Handlers.ScriptResourceHandler,确认它的状态是启用的,且针对所有请求路径生效 - 如果该处理程序缺失,可以运行
aspnet_regiis -i命令(注意要使用SharePoint对应的.NET版本的命令行工具,通常在C:\Windows\Microsoft.NET\Framework64\v4.0.30319目录下)修复ASP.NET处理程序映射
4. 检查URL重定向规则
如果你的站点配置了URL重写规则,可能会错误拦截AXD资源的请求:
- 进入IIS站点的URL重写模块,查看已有的重定向规则
- 添加排除条件:在规则的条件中,添加
{REQUEST_URI}匹配模式为^/.*\.axd$,并设置为不匹配,确保AXD资源请求不会被重定向
5. 清除缓存并测试
- 服务器端缓存:找到
C:\ProgramData\Microsoft\SharePoint\Config目录下的缓存文件夹(通常是一串随机字符命名的文件夹),删除里面所有.xml文件,保留cache.ini并将其内容修改为1,触发SharePoint重新加载配置 - 客户端缓存:用浏览器隐私模式打开
https://ghcscw.com,或者清除浏览器缓存和Cookie后测试,避免旧缓存影响
额外排查点
- 查看IIS日志,找到
ScriptResource.axd请求的302重定向目标,确认是否被错误跳转到了其他域名或路径 - 检查Web.config文件中的
<httpRuntime>节点,确保没有配置限制AXD资源的参数;同时确认<handlers>节点中ScriptResource.axd的配置正确
内容的提问来源于stack exchange,提问作者user1231748
相关产品推荐
相关产品推荐

