我们有一个网络应用程序,它具有内置的搜索功能,我们的用户可以执行复杂的搜索。这是我们的软件堆栈:
- 服务器端是 Spring MVC,使用 Struts/JSP 进行查看
- 客户端 JS 库是用于表格的纯 jQuery 和 jqGrid
- Web 应用程序打包为 WAR 并部署到 Tomcat 6.0.35 容器
- Apache 2.2.22 Web Server 是一个反向代理,为我们的 JS 提供服务(我知道这不是必需的,但这是项目交给我们的方式,而不是我们的设计!)
- 后端由另一个团队构建和维护,但将 SOLR 和 Oracle 用于上述文本搜索功能
当用户在大约 30 秒后执行“广泛”查询(没有很好地定位并且需要 SOLR 真正突突的查询)时,他们会在屏幕上收到一条错误消息,上面写着“代理错误”。该错误消息将代替显示搜索结果的普通 jqGrid 表显示。
我已经对我们项目中的每个文件进行了全文搜索,但找不到这个短语,也没有“ Proxy
”,也没有“ proxy
”。
这些神秘且难以捉摸的“代理错误”在 90% 的情况下都发生在 IE8 和 IE9 中,尽管偶尔会在 FireFox 中发现它们。
由于在我们的代码库中找不到该字符串(或任何类似的内容),因此它必须来自这些第 3 方依赖项之一,并且只是以搜索结果的形式发送回用户。
有没有人见过这些技术中的任何一种以前的行为?这可能是浏览器以某种方式注入 DOM 的东西吗?我在这里傻眼了,时间不多了。