问题标签 [ajp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
793 浏览

apache - 是否可以仅使用一个 IP 地址使用 ProxyPass

我正在寻找实现这种配置。所以我尝试了这个,但服务器一直在寻找server_testserver_prodhtdocsApache 下。我想要的是将请求重定向到 Tomcat 服务器。如果我在没有 /server_test 和 /server_prod 的情况下使用不同的端口,它可以工作,但这不是我想要的。

任何帮助,将不胜感激

0 投票
1 回答
1963 浏览

apache - AJP 连接器或 HTTP 连接器

我们在 Tomcat 6x 服务器中托管了一个 Web 应用程序(第 3 方产品)。我们将在 Tomcat 服务器前面安装一个 IBM HTTP 服务器作为 Web 服务器。在执行此操作时,产品供应商要求我们使用 HTTP 连接器(而不是 AJP 连接器)在 Tomcat 和 IHS Web 服务器之间进行通信。


我读过的几篇文章似乎指出,

AJP 连接器将提供比代理 HTTP 更快的性能......在其他方面它在功能上等同于 HTTP 集群。

1. 除了性能之外,还有什么其他原因应该选择 AJP 连接器,什么时候应该选择 HTTP 连接器?

2. 由于选择 HTTP 连接器而不是 AJP 连接器,是否还有其他副作用?

注意:我们的应用程序在高峰时段有大约 80 个并发用户。

0 投票
1 回答
2456 浏览

java - 从 AJP 连接器请求中检索 Shibboleth 属性

在 Apache 上运行 Shibboleth 身份验证以及在后端运行 Tomcat7 时,我遇到了一个奇怪的问题,Apache 通过 mod_proxy_ajp 发送所有内容。Shibboleth 的参数也是如此。

文档中明确指出,AJP 仅发送带前缀attributePrefix="AJP_"的属性,开发人员不应采取捷径并启用通过 HTTP 标头发送身份验证属性:https ://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPSpoofChecking

我尝试使用检索属性

但无论我尝试什么,Shibboleth 属性都不会出现。

0 投票
1 回答
737 浏览

tomcat - IIS->Tomcat Redirect:默认的多个worker

我正在尝试在 IIS 中的单个域后面配置多个 Tomcat (7) 实例。Tomcat 实例都在不同的端口上运行。我已经安装了 Tomcat isapi_rediect.dll 并配置了 IIS。

一切都与重定向器一起工作,除了(你知道它即将到来)我被告知“所有其他流量必须映射到两个实例之一(它们是非常不同的应用程序)。说所有请求可能更准确除了一个特定的模式需要映射到一个工人,只有特定的模式(/rpt)需要去另一个工人。

我在workers.properties中定义了两个工人:

以及 uriworkermap.properties 中的以下内容:

有了这个,一切似乎都很好。除了一些(相当多的)不包括 wxx 范围的请求。我真的需要将 rpt 和所有子内容映射到 ajp3_2,并将所有其他请求映射到 ajp3_1。

如果我添加

/|*=ajp13_1

然后 ajp3_2 实际上变得无法访问,并且通配符匹配甚至将 /rpt/* URI 映射到 ajp3_1。

有什么办法可以做我想做的事吗?我真的很感激任何帮助——我花了太多时间一遍又一遍地阅读相同的参考资料。

0 投票
0 回答
529 浏览

apache2 - Tomcat 集群和会话复制

我成功地为集群和会话复制配置了我的 Apache Httpd 服务器 (Apache 2) 和 Tomcat (Tomcat 7)。我通过以下两种情况进行了检查。1.所有tomcat实例都在同一台机器上 2.Tomcat实例分布在机器上。

对于第一种情况,一切正常,但对于第二种情况,我遇到了一些问题。我需要帮助。假设我在我的机器上安装了 Apache Httpd 服务器和 tomcat (TomcatA),在另一台机器上安装了第二个 tomcat (TomcatB)。除了这种情况,集群和会话复制工作正常。1. 启动 Apache Httpd 服务器。2. 启动 TOmcatA。3. 启动 TOmcatB。让我们假设第一个请求由 TomcatA 处理(我只有一个活动会话),并且该会话的所有其他请求都由 TomcatA 处理。现在,如果我关闭 TomcatA,那么该会话的所有其他下一个请求将被转发到 TomcatB,并且下一个请求会立即得到处理。现在如果我启动 TomcatA(我确保 TomcatA 已正确启动),那么所有请求仍由 TomcatB 处理。如果现在我关闭 TomcatB,那么我会得到 '

为什么我必须等待 60 秒,因为 TomcatA 已经启动,是否有任何配置设置可以减少该时间。

场景 1 不会发生这种情况(所有 tomcat 实例都在同一台机器上)。无论从集群中添加或删除 Tomcat 实例,所有请求都会立即顺利处理。

0 投票
0 回答
539 浏览

apache - 使用 Apache + SSL 代理到使用 AJP 的 JBoss - 丢失数据。

我有带有 SSL 的 Apache2.2 和带有 JavaWeb 应用程序的 JBoss 4.2.1。Apache 作为代理服务器使用 AJP 协议将数据传输到 JBoss 或从 JBoss 传输数据。

问题是当 Apache 使用 HTTPS 从客户端获取数据并将它们发送到 JBoss 时,JBoss 会得到一些空字段(即某些字段是“”)。当我使用

http://127.0.0.1:8080/myapp/...

它工作正常!

以前有人遇到过这个问题吗?

感谢您的回复!

我的 Apache2 设置:

0 投票
1 回答
348 浏览

grails - Grails 2.3.2 不调用 ForkedTomcatCustomizer

我将我的 grails 应用程序从 2.2.4 升级到 grails 2.3.2。我以前使用 _Events.groovy eventConfigureTomcat() 闭包从 apache httpd mod_jk 建立 ajp 连接。升级的时候发现这个已经不支持了,但是推荐的方法是实现 org.grails.plugins.tomcat.ForkedTomcatCustomizer customize() 方法,这样我就可以建立ajp连接器了。 请参阅 grails 文档并在 ForkedTomcatConnector 上进行搜索

我的问题是代码永远不会被调用。

我在 /src/groovy 目录中实现了 ForkedTomcatCustomizer。这是代码:

有人看到/解决了这个问题吗?

0 投票
2 回答
1521 浏览

java - 如何在重定向 Apache2 AJP 负载平衡 Tomcat 中删除会话 ID

好的,首先我们有一个运行在 Tomcat 节点上的 java servlet 应用程序。在这之前,我们有 Apache2 使用 ajp 连接器进行负载平衡。

通常,我们会滚动更新错误修正。这需要使用 Apache Jk 状态管理器来禁用节点并将所有新流量重定向到活动节点。这允许用户保留在旧节点上,直到他们注销。经过长时间的等待,我通常可以停止禁用的节点并将更新移入。然后激活该节点并禁用其他节点。

我要解决的问题是防止非活动用户在会话结束后重新连接到禁用的节点。文档中有对这个问题的参考。

关于将激活设置为禁用的最后一点说明:请求附带的会话 ID 作为请求 URL 的一部分 (;jsessionid=...) 或通过 cookie 发送。当使用长时间运行的书签或浏览器时,可能会发送带有指向禁用成员的旧且无效的会话 ID 的请求。由于负载均衡器没有有效会话列表,它会将请求转发给禁用的成员。因此,排水需要的时间比预期的要长。要处理这种情况,您可以向 Web 应用程序添加一个 Servlet 过滤器,该过滤器会检查请求属性 JK_LB_ACTIVATION。该属性包含字符串“ACT”、“DIS”或“STP”之一。如果您检测到“DIS”并且请求的会话不再处于活动状态,重定向的请求将不再携带会话信息,因此负载均衡器不会将其发送给禁用的工作人员。请求属性 JK_LB_ACTIVATION 已在 1.2.32 版本中添加。

我的问题与粗体声明有关。如何防止在重定向中发送 JSESSION ID。

我现在使用的代码只是以无限重定向循环结束。

使用 Firebug 检查重定向显示 JSESSIONID 仍包含在重定向中。如何删除它?我所看到的关于删除 cookie 的所有内容似乎都不起作用。

0 投票
2 回答
1567 浏览

apache - SonarQube 4.x 仅与嵌入式 Tomcat -> 您能否为 Apache 代理添加 AJP 支持

我知道 SonarQube 仅支持 4.x 版本的嵌入式模式。我需要在 apache 服务器后面运行服务器。因此我需要对嵌入式 Tomcat 服务器的 AJP 支持。

您能否记录如何在 Tomcat 端启用 AJP 支持以及如何配置端口号。据我所知,这是通过 https 在 Apache 服务器后面运行 tomcat 应用程序的唯一可靠方法。

将我自己的 SSL 证书配置到嵌入式 tomcat 的变体有一些缺点

  • 我目前有超过 12 台服务器运行 Apache,并且真的不想配置 12 次服务器。
  • 我想通过标准 https 端口运行所有服务器以简化 URL
  • 我更喜欢避免设置 12 个 Ubuntu 服务器实例并成为 12 个 SSL 证书(或通配符证书)。

[以上注释添加以澄清评论]

谢谢

马塞尔·鲍曼

0 投票
1 回答
994 浏览

web-services - 将 Tomcat 上的 RESTful 端点限制为本地 webapp

Tomcat 或 Apache 中是否有内置机制来区分本地 Web 应用程序调用本地 Web 服务与直接调用 Web 服务?

例如,单个服务器同时具有 apache 和 tomcat 服务器,其中前端 Web 应用程序部署到 apache 和后端服务部署在 tomcat 上。webapp 可以使用 mod_proxy 通过端口 80 调用服务,但是直接调用 webservice 并检查 tomcaat 的日志显示请求是相同的。例如:

这只会阻止(或如果您删除拒绝,则允许)所有外部请求,并且两个请求在 tomcat 的日志中显示相同。

是否有推荐的机制来区分和限制直接远程服务请求与发出服务请求的 Web 应用程序?