[JBoss JIRA] (MODCLUSTER-351) 500 error when using ProxyPassReverse and proxying RewriteRule to the balancer
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-351?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-351:
--------------------------------------
Component/s: Native (httpd modules)
> 500 error when using ProxyPassReverse and proxying RewriteRule to the balancer
> ------------------------------------------------------------------------------
>
> Key: MODCLUSTER-351
> URL: https://issues.jboss.org/browse/MODCLUSTER-351
> Project: mod_cluster
> Issue Type: Bug
> Components: Native (httpd modules)
> Affects Versions: MOD_CLUSTER_1_0_10_GA_CP04, 1.2.4.Final
> Reporter: Aaron Ogburn
> Assignee: Jean-Frederic Clere
> Priority: Minor
>
> Looks like some compatability issues exist between Rewrites to the mod_cluster balancer and a ProxyPassReverse for it.
> <VirtualHost *:80>
> RewriteEngine On
> RewriteRule ^/foo/(.*)$ balancer://mycluster/foo/$1 [P,L]
> ProxyPassReverse /foo/ balancer://mycluster/foo/
> </VirtualHost>
> Requests served through the above VHost config fail with a 500. The log shows:
> [Thu Aug 08 16:38:50 2013] [debug] mod_proxy_cluster.c(3448): proxy: CLUSTER no balancer for balancer://mycluster/foo/hi.jsp
> [Thu Aug 08 16:38:50 2013] [debug] proxy_util.c(1525): [client 127.0.0.1] proxy: *: found reverse proxy worker for balancer://mycluster/foo/hi.jsp
> [Thu Aug 08 16:38:50 2013] [debug] mod_proxy.c(1015): Running scheme balancer handler (attempt 0)
> [Thu Aug 08 16:38:50 2013] [debug] mod_proxy_http.c(1955): proxy: HTTP: declining URL balancer://mycluster/foo/hi.jsp
> [Thu Aug 08 16:38:50 2013] [debug] mod_proxy_ajp.c(664): proxy: AJP: declining URL balancer://mycluster/foo/hi.jsp
> [Thu Aug 08 16:38:50 2013] [warn] proxy: No protocol handler was valid for the URL /foo/hi.jsp. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
> Removing the ProxyPassReverse, the request works again. Looks like the balancer isn't found for some reason with both the Rewrite and ProxyPassReverse.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (MODCLUSTER-284) remove_session_route doesn't work as expected with session id in the URL
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-284?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-284:
--------------------------------------
Component/s: Native (httpd modules)
> remove_session_route doesn't work as expected with session id in the URL
> ------------------------------------------------------------------------
>
> Key: MODCLUSTER-284
> URL: https://issues.jboss.org/browse/MODCLUSTER-284
> Project: mod_cluster
> Issue Type: Bug
> Components: Native (httpd modules)
> Affects Versions: 1.1.3.Final, 1.2.0.Final
> Reporter: Stefano Nichele
> Assignee: Jean-Frederic Clere
>
> Looking at the code of remove_session_route (and trying it) i saw that URLs lke this one
> /test.jsp;jsessionid=1233454532432342.NODE01
> /test.jsp;jsessionid=1233454532432342.NODE01?p1=v1&p2=v2
> /test.jsp;jsessionid=1233454532432342.NODE01;otherparam=value
> are not correctly parsed and the session id is not removed.
> To note that it seems the code handles jsessionid as url parameter and not as URL "path parameter" (see for isntance http://doriantaylor.com/policy/http-url-path-parameter-syntax).
> This is for instance a piece of tomcat code that does something like what remove_session_route should do (at least in the URL part):
> {code}
> /**
> * Strips a servlet session ID from <tt>url</tt>. The session ID
> * is encoded as a URL "path parameter" beginning with "jsessionid=".
> * We thus remove anything we find between ";jsessionid=" (inclusive)
> * and either EOS or a subsequent ';' (exclusive).
> *
> * taken from org.apache.taglibs.standard.tag.common.core.ImportSupport
> */
> public static String stripSession(String url) {
> StringBuffer u = new StringBuffer(url);
> int sessionStart;
> while ((sessionStart = u.toString().indexOf(";jsessionid=")) != -1) {
> int sessionEnd = u.toString().indexOf(";", sessionStart + 1);
> if (sessionEnd == -1)
> sessionEnd = u.toString().indexOf("?", sessionStart + 1);
> if (sessionEnd == -1) // still
> sessionEnd = u.length();
> u.delete(sessionStart, sessionEnd);
> }
> return u.toString();
> }
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (MODCLUSTER-250) bad interaction with ProxyPassReverse when redirection
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-250?page=com.atlassian.jira.pl... ]
Radoslav Husar updated MODCLUSTER-250:
--------------------------------------
Summary: bad interaction with ProxyPassReverse when redirection (was: bad interaction with ProxyPassReverse when redirection.)
> bad interaction with ProxyPassReverse when redirection
> ------------------------------------------------------
>
> Key: MODCLUSTER-250
> URL: https://issues.jboss.org/browse/MODCLUSTER-250
> Project: mod_cluster
> Issue Type: Bug
> Components: Native (httpd modules)
> Affects Versions: 1.1.3.Final
> Environment: Mixing ProxyPass/ProxyPassReverse and mod_cluster
> Reporter: Jean-Frederic Clere
> Assignee: Michal Karm Babacek
> Priority: Minor
> Fix For: 1.1.4.Final
>
>
> Using:
> ProxyPass / balancer://mycluster/ stickysession=JSESSIONID|jsessionid nofailover=On
> ProxyPassReverse / balancer://mycluster/
> or
> ProxyPass / balancer://mycluster stickysession=JSESSIONID|jsessionid nofailover=On
> ProxyPassReverse / balancer://mycluster
> (note that this one won't work with mod_proxy_balancer).
> You get stuff like:
> curl -v http://jfcpc:8000/myapp
> +++
> < HTTP/1.1 302 Moved Temporarily
> < Date: Thu, 25 Aug 2011 09:40:17 GMT
> < Server: Apache-Coyote/1.1
> < Location: http://jfcpc:8000//myapp/
> < Content-Length: 0
> < Content-Type: text/plain
> +++
> Or
> curl -v http://jfcpc:8000/myapp/TestRedirect?location=/toto.html
> +++
> < HTTP/1.1 302 Moved Temporarily
> < Date: Thu, 25 Aug 2011 09:42:59 GMT
> < Server: Apache-Coyote/1.1
> < Location: http://jfcpc:8000//toto.html;jsessionid=OYeoix8WaRh6VEtlSrfzIS7Q.498bb1f0...
> < Content-Length: 0
> < Set-Cookie: JSESSIONID=OYeoix8WaRh6VEtlSrfzIS7Q.498bb1f0-00d9-3436-a341-7f012bc2e7ec; Path=/myapp
> < Content-Type: text/plain
> +++
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (MODCLUSTER-385) "MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument" on shutdown with IPv6
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-385?page=com.atlassian.jira.pl... ]
Radoslav Husar commented on MODCLUSTER-385:
-------------------------------------------
Fixed with in 2.0 with NIO.
> "MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument" on shutdown with IPv6
> ----------------------------------------------------------------------------------------------------------------------
>
> Key: MODCLUSTER-385
> URL: https://issues.jboss.org/browse/MODCLUSTER-385
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.3.0.Alpha1
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Priority: Minor
> Fix For: 2.0.0.Alpha1
>
>
> If -Djava.net.preferIPv4Stack=false, but mcast address is IPv4, shutting down the server results in exception:
> {noformat}
> 13:24:49,398 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.0.0.Final-SNAPSHOT "WildFly" started in 7860ms - Started 654 of 757 services (210 services are lazy, passive or on-demand)
> ^C13:24:57,591 INFO [org.jboss.modcluster] (ServerService Thread Pool -- 14) MODCLUSTER000002: Initiating mod_cluster shutdown
> 13:24:57,591 WARN [org.jboss.modcluster] (ServerService Thread Pool -- 14) MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument
> at java.net.PlainDatagramSocketImpl.send(Native Method) [rt.jar:1.7.0_51]
> at java.net.DatagramSocket.send(DatagramSocket.java:676) [rt.jar:1.7.0_51]
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.interruptDatagramReader(AdvertiseListenerImpl.java:209)
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.stop(AdvertiseListenerImpl.java:228)
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.destroy(AdvertiseListenerImpl.java:244)
> at org.jboss.modcluster.ModClusterService.shutdown(ModClusterService.java:220)
> at org.wildfly.extension.mod_cluster.ContainerEventHandlerService.stop(ContainerEventHandlerService.java:115)
> at org.jboss.as.clustering.msc.AsynchronousService$2.run(AsynchronousService.java:114)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51]
> at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
> at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final]
> 13:24:57,594 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017535: Unregister web context: /clusterbench-passivating
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months
[JBoss JIRA] (MODCLUSTER-385) "MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument" on shutdown with IPv6
by Radoslav Husar (JIRA)
[ https://issues.jboss.org/browse/MODCLUSTER-385?page=com.atlassian.jira.pl... ]
Radoslav Husar closed MODCLUSTER-385.
-------------------------------------
Fix Version/s: 2.0.0.Alpha1
Resolution: Done
> "MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument" on shutdown with IPv6
> ----------------------------------------------------------------------------------------------------------------------
>
> Key: MODCLUSTER-385
> URL: https://issues.jboss.org/browse/MODCLUSTER-385
> Project: mod_cluster
> Issue Type: Bug
> Affects Versions: 1.3.0.Alpha1
> Reporter: Radoslav Husar
> Assignee: Radoslav Husar
> Priority: Minor
> Fix For: 2.0.0.Alpha1
>
>
> If -Djava.net.preferIPv4Stack=false, but mcast address is IPv4, shutting down the server results in exception:
> {noformat}
> 13:24:49,398 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.0.0.Final-SNAPSHOT "WildFly" started in 7860ms - Started 654 of 757 services (210 services are lazy, passive or on-demand)
> ^C13:24:57,591 INFO [org.jboss.modcluster] (ServerService Thread Pool -- 14) MODCLUSTER000002: Initiating mod_cluster shutdown
> 13:24:57,591 WARN [org.jboss.modcluster] (ServerService Thread Pool -- 14) MODCLUSTER000033: Failed to interrupt socket reception.: java.io.IOException: Invalid argument
> at java.net.PlainDatagramSocketImpl.send(Native Method) [rt.jar:1.7.0_51]
> at java.net.DatagramSocket.send(DatagramSocket.java:676) [rt.jar:1.7.0_51]
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.interruptDatagramReader(AdvertiseListenerImpl.java:209)
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.stop(AdvertiseListenerImpl.java:228)
> at org.jboss.modcluster.advertise.impl.AdvertiseListenerImpl.destroy(AdvertiseListenerImpl.java:244)
> at org.jboss.modcluster.ModClusterService.shutdown(ModClusterService.java:220)
> at org.wildfly.extension.mod_cluster.ContainerEventHandlerService.stop(ContainerEventHandlerService.java:115)
> at org.jboss.as.clustering.msc.AsynchronousService$2.run(AsynchronousService.java:114)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51]
> at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51]
> at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final]
> 13:24:57,594 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017535: Unregister web context: /clusterbench-passivating
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
6 years, 8 months