问题标签 [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 回答
529 浏览

tomcat - iPlanet/Tomcat AJP 连接挂起

我们当前的生产网络环境使用:

  • Web 服务器:Netscape iPlanet v4.1(别笑!)
  • Servlet 容器:Tomcat 6.0.32

两者都在不同的服务器上运行 SunOS 5.9(Solaris 9?)。

我们注意到(显然)随机地,在 Tomcat 上运行的应用程序似乎不可用。进一步的调查似乎表明来自网络服务器的 AJP 连接似乎被阻止 - 或者至少网络服务器无法成功地将请求转发到 Tomcat。

有没有其他人经历过(并修复过)iPlanet/Tomcat 的此类问题?

注意:我们意识到 iPlanet v4.1 有点古老,它正在被 Apache HTTP Server 取代,但还不是现在。

0 投票
1 回答
347 浏览

apache - Jboss 暂停 AJP 端口

我正在尝试通过 AJP 协议将 Apache WS 连接到 JBoss。问题是 JBoss 暂停了 ajp 端口的绑定。

这是日志:

任何帮助表示赞赏。

谢谢

0 投票
1 回答
830 浏览

tomcat - 使用通过 ajp 连接到 tomcat 的 apache 时 request.getDispatcher("/newurl").forward() 会工作吗?

我试图通过编写一个 servlet 过滤器来改变我正在使用的第 3 方应用程序的行为,以根据某些条件将请求转发到特定的 URL。

我最初尝试过,request.getDispatcher(url).forward();但总是显示一个 404 页面,显示找不到该 url。我通过request.sendRedirect改用解决了这个问题,但直到现在我才意识到 404 屏幕是我通常看到的由 tomcat 启动的服务器。

这让我开始思考这个例子中的配置。我要转发的 url 是一个 cgi 脚本。我们有 apache 作为通过 ajp 连接器连接的前端,并且 apache 被配置为执行 cgi 脚本。

所以我的问题是,servlet 过滤器的转发是否曾经到达 apache,或者转发是否由 tomcat 专门处理,这就是为什么它不起作用?

0 投票
1 回答
2652 浏览

apache - 如何使用基本身份验证保护在 Apache2 虚拟主机中反向代理的 Tomcat webapp?

我无法弄清楚如何添加基本 HTTP 身份验证来密码保护在生产 Web 服务器上运行的开发测试环境。主站点和测试环境都是虚拟主机,它们使用 AJP 代理来提供单独的 Tomcat webapp 实例。我们需要防止公众在不更改 Tomcat 环境中的 web.xml 的情况下访问测试环境,必须使用 Apache 而不是 Tomcat 来实现保护。但是,虚拟主机中的 ProxyPass 和 ProxyPassReverse 指令似乎覆盖了对 .htaccess 或我放入 <Directory> 控制块中的任何内容的使用,而我似乎无法在 <VirtualHost> 控件的主体中使用像 AuthType 这样的指令挡在旁边。一世' 我对 Apache(或 Tomcat)不是很有经验,并且不确定哪些指令可以应用在哪里以及哪些可能会覆盖其他指令。因为需要在生产服务器上进行更改,所以我不能轻易进行实验,以免造成停机。

httpd.conf 本身非常简单:

相关的虚拟主机文件 /etc/apache2/sites-available/dev443 如下:

我可以在控制块内移动 AJP 代理配置吗?我看了一下这个 StackOverflow Q&A,它表明它支持身份验证。它会在控制块内得到支持吗(解决方案在 httpd.conf 中有它)?

目前,我们使用防火墙通过IP进行过滤,但是项目中的一些人需要在家中访问测试环境,并且他们没有固定的IP地址用于互联网连接,因此密码保护将涉及较少的维护从长远来看,并为远程工作提供更大的灵活性。

作为记录,涉及以下版本:Apache:2.2.14 / Tomcat:7.0.23 / Java:SE 1.6.0_26-b03 / OS:Ubuntu 10.04 LTS

0 投票
1 回答
2050 浏览

debugging - 在tomcat上调试ajp

每当 apache http 服务器通过 ajp 将 Web 请求转发给它时,tomcat 6.0.30 就会崩溃。通过http 8080处理相同的请求本身就可以了。我该如何调试这个问题?可能是什么问题呢?

0 投票
1 回答
5212 浏览

configuration - Tomcat 应用程序没有响应且没有日志

我已将 apache 配置为对 tomcat 的请求。以下是我的配置。

我在 apache 日志中收到以下错误

它可以正常工作一段时间然后突然我收到以下错误

当我尝试netstat -antup | grep 8009命令时,我得到以下

我无法弄清楚我的问题在哪里。是apache配置还是tomcat配置还是编码问题...我相信这是一个配置问题...请帮帮我..

0 投票
1 回答
925 浏览

java - Glassfish + mod_proxy_ajp 下载被截断

我刚刚升级到 Glassfish 3.1.2,我遇到了文件下载被截断的问题:

Glassfish 配置了一个 jk-listener,我在 Apache 后面使用 mod_proxy_ajp 运行它。

我的应用程序即时生成一个 zip 文件,当我通过 ajp 代理下载时,该文件现在被截断为 256Kb。但是,如果我绕过 Apache 并直接使用 Glassfish http 端口,下载将完全完成(大约 700Kb)。

我在 Apache 日志中看到了这些错误:

有什么想法吗?

0 投票
5 回答
2519 浏览

apache - 切换到 HTTPS 时出现 Grails + Tomcat + Apache 错误

我们有一个 Grails Web 应用程序,在 Apache2 后面的 tomcat7 中运行。使用 ProxyPass 和 ajp 协议一切正常:

其中 9013 是我们在 tomcat 中的 AJP 端口server.xml

现在,我们的问题是这个。我们的 Grails 应用程序同时运行 HTTP 和 HTTPS。当转到应用程序中的某个区域时,Spring Security(Grails Spring Security Core 插件)会将您从使用 HTTP 的地址重定向到 HTTPS,例如当点击:

http://www.example.com/secure/path

Spring Security 会将您重定向到:

https://www.example.com/secure/path

但是现在,当它重定向到那里时,服务器挂起,最后 Firefox 给出“Firefox 检测到服务器正在以永远不会完成的方式重定向该地址的请求”。错误。

我是否正确假设使用 AJP 代理进行的某些重定向会变坏?谁能提供有关此设置如何工作的更多信息?


进一步看,我们发现了以下内容:

当直接(通过 IP 和端口)在 tomcat 中点击应用程序时,一切正常 100%。但是一旦我们通过 Apache,Spring Security 重定向就不起作用了。您在 Apache 日志中不断收到以下信息:

...

而不是重定向到https,似乎apache神奇地让它再次尝试http。谢谢

0 投票
4 回答
2670 浏览

apache - grails应用程序的apache ajp配置

我有多个使用 ajp 协议在 tomcat 服务器上运行的 grails 应用程序。在同一台服务器上,我将 apache 作为这些 tomcat 应用程序的前端运行。apache配置如下:

我希望 example1 作为根上下文运行

这不起作用。所有静态内容都已损坏。网页文本呈现,图像将指向:/example1/images/myimage.jpg 如果您转到:/images/myimage.jpg,图像将得到解析

我已经尝试了很多方法来避免将 example1 部署为 ROOT.war。但这似乎是解决此问题的唯一方法。这不足以满足我的需要。

在 grails 方面,我已将 ${appName} 从服务器 url 中删除,看起来像:grails.serverURL = "http://apacheajp.example.com/"

我已将 grails.app.context=/ 添加到 application.properties,这也不起作用。

这里的最终目标是使用这个 apache 来为多个子域服务。我希望 example1.example.com(apacheajp.example.com 的别名)解析为 example1 应用程序。同样,我希望 example2.example.com 对 example2 应用程序采取相同的方式。这解释了为什么部署为 ROOT 是不可取的。

我使用的服务器是 RHEL6

这篇文章最好地描述了我遇到的相同问题:http: //grails.1312388.n4.nabble.com/Grails-context-big-problem-with-apache-mod-proxy-td1392448.html

0 投票
1 回答
5183 浏览

tomcat - JVM HeapDump:内存在“java.util.concurrent.ConcurrentHashMap$Segment”的一个实例中累积

我在使用 JVM 堆时遇到了问题。

我们使用 Apache HTTP Server 和 Apache Tomcat Application Server 运营一个网站。

所有对 Apache HTTP 服务器的 *.jsp 请求都将被重定向到 Tomcat 服务器(协议:ajp)。

该网站有超过 10'000 个 jsp 文件。

我们还有一个谷歌搜索工具,它每晚都会抓取网站。

当它爬行时,jvm 堆空间上升到 8 GB 的最大限制。

使用 javamelody,我可以看到堆空间增加类似于加载的类。

为了分析,我做了一个堆转储。

以下是来自 eclipse MAT 的报告:


“org.apache.catalina.loader.StandardClassLoader @ 0x7092c5148”加载的“org.apache.jasper.servlet.JspServlet”的一个实例占用了1'189'603'328(96.75%)字节。

内存在“”加载的“java.util.concurrent.ConcurrentHashMap$Segment[]”的一个实例中累积。

关键词

java.util.concurrent.ConcurrentHashMap$Segment[]

org.apache.catalina.loader.StandardClassLoader @ 0x7092c5148

org.apache.jasper.servlet.JspServlet


GSA 请求是否存在问题?

为什么JVM不能卸载生成的类?