Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-5753

Standalone install does not work with Apache + mod_proxy_ajp + SSL

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Won't Fix
    • Component/s: core
    • Labels:
      None
    • Environment:
      CentOS release 5.4 (Final)
      2.6.18-164.10.1.el5xen (64 bit)
      java version "1.6.0_16"
      hudson-1.347-1.1
      httpd-2.2.3-31.el5.centos.2
    • Similar Issues:

      Description

      I've configured hudson to only use the ajp connector using a command line similar to

      /usr/lib/jvm/java-1.6.0/bin/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -Xmx64m -DHUDSON_HOME=/space/hudson -jar /usr/lib/hudson/hudson.war --logfile=/var/log/hudson/hudson.log --daemon --prefix=hudson --httpPort=-1 --ajp13Port=8109 --debug=5 --handlerCountMax=10 --handlerCountMaxIdle=0
      

      I'm using the following apache configuration file

          ProxyRequests Off
          ProxyPreserveHost On
      
          <Proxy *>
              Order deny,allow
              Allow from all
          </Proxy>
      
          ProxyPass /hudson ajp://localhost:8109/hudson retry=1
          ProxyPassReverse /hudson ajp://localhost:8109/hudson
      
      

      When accessing https://host/hudson , I get a 503 error page from Apache. The apache logs contain:

      [Wed Feb 24 23:58:04 2010] [error] ajp_read_header: ajp_ilink_receive failed
      [Wed Feb 24 23:58:04 2010] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) (localhost)
      

      while the winstone logs contain:

      [Winstone 2010/02/24 23:58:04] - Error within request handler thread
      java.lang.StringIndexOutOfBoundsException: String index out of range: 1065
              at java.lang.String.checkBounds(String.java:401)
              at java.lang.String.<init>(String.java:442)
              at winstone.ajp13.Ajp13IncomingPacket.readString(Ajp13IncomingPacket.java:275)
              at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:189)
              at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:179)
              at winstone.RequestHandlerThread.run(RequestHandlerThread.java:79)
              at java.lang.Thread.run(Thread.java:619)
      

      It's worth mentioning that this was working with Tomcat 6.0.20 , but stopped working when I tried to move over to the standalone install.

      I've tried various combinations with or without prefix, and the only one which seems to work is ajp without any prefix.

        Attachments

          Issue Links

            Activity

            Hide
            mka2 mka2 added a comment -

            The AJP connector of the Winstone servlet container is broken. This bug has been reported in Winstone's bug tracker:

            Problem with AJP running behind Apache 2.2 mod_proxy - ID: 2895779

            Error within request handler thread, Ajp13Listener.ShortPac - ID: 2823683

            The workaround is to use a "real" servlet container like Tomcat or Jetty, they have working AJP connectors.

            Show
            mka2 mka2 added a comment - The AJP connector of the Winstone servlet container is broken. This bug has been reported in Winstone's bug tracker: Problem with AJP running behind Apache 2.2 mod_proxy - ID: 2895779 Error within request handler thread, Ajp13Listener.ShortPac - ID: 2823683 The workaround is to use a "real" servlet container like Tomcat or Jetty, they have working AJP connectors.
            Hide
            rombert Robert Munteanu added a comment -

            Thanks for the information. I'll try to use the HTTP connector then, since the rpm is much more convenient than the war download.

            Show
            rombert Robert Munteanu added a comment - Thanks for the information. I'll try to use the HTTP connector then, since the rpm is much more convenient than the war download.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in hudson
            User: : kohsuke
            Path:
            trunk/hudson/main/war/pom.xml
            trunk/www/changelog.html
            http://jenkins-ci.org/commit/31635
            Log:
            [FIXED JENKINS-5753] Integrated winstone 0.9.10-hudson-20 to fix the AJP parsing problem.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : kohsuke Path: trunk/hudson/main/war/pom.xml trunk/www/changelog.html http://jenkins-ci.org/commit/31635 Log: [FIXED JENKINS-5753] Integrated winstone 0.9.10-hudson-20 to fix the AJP parsing problem.
            Hide
            lbeuster lbeuster added a comment - - edited

            hmm, still doesn't work for me with Apache 1.2.14 mod_proxy/mod_rewrite + Hudson 1.361:

            Hudson:
            -----------------------------

            [Winstone 2010/06/09 15:30:29] - Error within request handler thread
            java.io.EOFException
            at java.io.DataInputStream.readFully(DataInputStream.java:180)
            at java.io.DataInputStream.readFully(DataInputStream.java:152)
            at winstone.ajp13.Ajp13IncomingPacket.readString(Ajp13IncomingPacket.java:237)
            at winstone.ajp13.Ajp13IncomingPacket.readString(Ajp13IncomingPacket.java:224)
            at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:161)
            at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:179)
            at winstone.RequestHandlerThread.run(RequestHandlerThread.java:79)
            at java.lang.Thread.run(Thread.java:619)

            Apache:
            -------------------
            [Wed Jun 09 15:30:29 2010] [error] (70014)End of file found: ajp_ilink_receive() can't receive header
            [Wed Jun 09 15:30:29 2010] [error] ajp_read_header: ajp_ilink_receive failed
            [Wed Jun 09 15:30:29 2010] [error] (120006)APR does not understand this error code: proxy: read response failed from (null)

            Another workaround that works wirh Hudson standalone is mod_jk instead of mod_proxy.

            Regards
            Lars

            Show
            lbeuster lbeuster added a comment - - edited hmm, still doesn't work for me with Apache 1.2.14 mod_proxy/mod_rewrite + Hudson 1.361: Hudson: ----------------------------- [Winstone 2010/06/09 15:30:29] - Error within request handler thread java.io.EOFException at java.io.DataInputStream.readFully(DataInputStream.java:180) at java.io.DataInputStream.readFully(DataInputStream.java:152) at winstone.ajp13.Ajp13IncomingPacket.readString(Ajp13IncomingPacket.java:237) at winstone.ajp13.Ajp13IncomingPacket.readString(Ajp13IncomingPacket.java:224) at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:161) at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:179) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:79) at java.lang.Thread.run(Thread.java:619) Apache: ------------------- [Wed Jun 09 15:30:29 2010] [error] (70014)End of file found: ajp_ilink_receive() can't receive header [Wed Jun 09 15:30:29 2010] [error] ajp_read_header: ajp_ilink_receive failed [Wed Jun 09 15:30:29 2010] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) Another workaround that works wirh Hudson standalone is mod_jk instead of mod_proxy. Regards Lars
            Hide
            acdha acdha added a comment -

            This is definitely still broken. Just reproduced using the latest 1.367 .deb on Ubuntu 10.04 with this config:

            ProxyRequests Off
            ProxyPass /hudson ajp://127.0.0.1:8102/hudson
            ProxyPassReverse /hudson ajp://127.0.0.1:8102/hudson

            Example log output:

            [Fri Jul 23 14:57:44 2010] [error] ajp_read_header: ajp_ilink_receive failed
            [Fri Jul 23 14:57:44 2010] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) (127.0.0.1)

            Show
            acdha acdha added a comment - This is definitely still broken. Just reproduced using the latest 1.367 .deb on Ubuntu 10.04 with this config: ProxyRequests Off ProxyPass /hudson ajp://127.0.0.1:8102/hudson ProxyPassReverse /hudson ajp://127.0.0.1:8102/hudson Example log output: [Fri Jul 23 14:57:44 2010] [error] ajp_read_header: ajp_ilink_receive failed [Fri Jul 23 14:57:44 2010] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) (127.0.0.1)
            Hide
            rdesgroppes Régis Desgroppes added a comment -

            Similar error:
            Thu Aug 19 15:02:02 2010] [notice] Apache/2.2.14 (Ubuntu) DAV/2 SVN/1.6.6 proxy_html/3.0.1 mod_python/3.3.1 Python/2.6.5 mod_ssl/2.2.14 OpenSSL/0.9.8k configured – resuming normal operations
            [Thu Aug 19 15:02:06 2010] [error] (70014)End of file found: ajp_ilink_receive() can't receive header
            [Thu Aug 19 15:02:06 2010] [error] ajp_read_header: ajp_ilink_receive failed

            Show
            rdesgroppes Régis Desgroppes added a comment - Similar error: Thu Aug 19 15:02:02 2010] [notice] Apache/2.2.14 (Ubuntu) DAV/2 SVN/1.6.6 proxy_html/3.0.1 mod_python/3.3.1 Python/2.6.5 mod_ssl/2.2.14 OpenSSL/0.9.8k configured – resuming normal operations [Thu Aug 19 15:02:06 2010] [error] (70014)End of file found: ajp_ilink_receive() can't receive header [Thu Aug 19 15:02:06 2010] [error] ajp_read_header: ajp_ilink_receive failed
            Hide
            ruckc Curtis Ruck added a comment -

            Still having this issue with httpd 2.2.15, w/ 1.452. We have been using the Jenkins RPM so its easier to stay current, any chance of switching winstone out with Jetty?

            Show
            ruckc Curtis Ruck added a comment - Still having this issue with httpd 2.2.15, w/ 1.452. We have been using the Jenkins RPM so its easier to stay current, any chance of switching winstone out with Jetty?
            Hide
            mjeanson Michael Jeanson added a comment -

            The problem comes from the ssl_key_length attribute which is an integer per the ajp13 spec but is read as a string by winstone.

            Show
            mjeanson Michael Jeanson added a comment - The problem comes from the ssl_key_length attribute which is an integer per the ajp13 spec but is read as a string by winstone.
            Hide
            raboof raboof added a comment - - edited

            (sorry, misread. so this is a winstone bug and already reported there.)

            Show
            raboof raboof added a comment - - edited (sorry, misread. so this is a winstone bug and already reported there.)
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Kohsuke Kawaguchi
            Path:
            src/java/winstone/ajp13/Ajp13IncomingPacket.java
            http://jenkins-ci.org/commit/winstone/38a84316b449b3c3927beb01ade3f6552682d0b0
            Log:
            Merge pull request #8 from felfert/master

            [FIXED JENKINS-5753] Winstone AJP13 SSL problem

            Compare: https://github.com/jenkinsci/winstone/compare/bb642baab8d5...38a84316b449

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: src/java/winstone/ajp13/Ajp13IncomingPacket.java http://jenkins-ci.org/commit/winstone/38a84316b449b3c3927beb01ade3f6552682d0b0 Log: Merge pull request #8 from felfert/master [FIXED JENKINS-5753] Winstone AJP13 SSL problem Compare: https://github.com/jenkinsci/winstone/compare/bb642baab8d5...38a84316b449
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Kohsuke Kawaguchi
            Path:
            changelog.html
            war/pom.xml
            http://jenkins-ci.org/commit/jenkins/905bc03b735de8f17a50962d93c520e1651401cd
            Log:
            [FIXED JENKINS-5753]

            Integrated the fix into Jenkins

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Kohsuke Kawaguchi Path: changelog.html war/pom.xml http://jenkins-ci.org/commit/jenkins/905bc03b735de8f17a50962d93c520e1651401cd Log: [FIXED JENKINS-5753] Integrated the fix into Jenkins
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #2722
            [FIXED JENKINS-5753] (Revision 905bc03b735de8f17a50962d93c520e1651401cd)

            Result = UNSTABLE
            kohsuke : 905bc03b735de8f17a50962d93c520e1651401cd
            Files :

            • changelog.html
            • war/pom.xml
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #2722 [FIXED JENKINS-5753] (Revision 905bc03b735de8f17a50962d93c520e1651401cd) Result = UNSTABLE kohsuke : 905bc03b735de8f17a50962d93c520e1651401cd Files : changelog.html war/pom.xml
            Hide
            rojeh Rojeh added a comment - - edited

            This bug appears to actually be resolved in 1.526 instead.

            Show
            rojeh Rojeh added a comment - - edited This bug appears to actually be resolved in 1.526 instead.
            Hide
            jsween James added a comment -

            Upgraded today to 1.526 on centos 5.7 x64 2.6.18-274.3.1.el5 java 1.6.0_27 and began seeing this error which I believe is related/similar: ( apologies if I am off-base ) can move to tomcat but wanted to change as little as possible from the existing install.

            winstone.WinstoneException: Unknown AJP packet type - 0
            at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:80)
            at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:184)
            at winstone.RequestHandlerThread.run(RequestHandlerThread.java:69)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
            at java.util.concurrent.FutureTask.run(FutureTask.java:138)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:662)
            Aug 10, 2013 7:36:10 PM hudson.model.Run execute

            Show
            jsween James added a comment - Upgraded today to 1.526 on centos 5.7 x64 2.6.18-274.3.1.el5 java 1.6.0_27 and began seeing this error which I believe is related/similar: ( apologies if I am off-base ) can move to tomcat but wanted to change as little as possible from the existing install. winstone.WinstoneException: Unknown AJP packet type - 0 at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:80) at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:184) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:69) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Aug 10, 2013 7:36:10 PM hudson.model.Run execute
            Hide
            karjri Riku added a comment -

            Jenkins ver. 1.532

            os: CentOS 2.6.32-358.18.1.el6.x86_64

            Can not get Trigger builds remotely (git post push hook) to work because of this.

            Hook URL: (POST) https://xx.xx.xx.xx/job/job_name/build?token=MyAuthTOken

            jenkins.log:

            --8<------8<------8<----

            Sep 29, 2013 9:28:57 PM winstone.Logger logInternal
            SEVERE: Error within request handler thread

            winstone.WinstoneException: Unknown AJP packet type - 0
            at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:80)
            at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:184)
            at winstone.RequestHandlerThread.run(RequestHandlerThread.java:69)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
            at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
            at java.util.concurrent.FutureTask.run(FutureTask.java:166)
            at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
            at java.lang.Thread.run(Thread.java:679)

            --8<------8<------8<----

            Show
            karjri Riku added a comment - Jenkins ver. 1.532 os: CentOS 2.6.32-358.18.1.el6.x86_64 Can not get Trigger builds remotely (git post push hook) to work because of this. Hook URL: (POST) https://xx.xx.xx.xx/job/job_name/build?token=MyAuthTOken jenkins.log: -- 8< ------ 8< ------ 8< ---- Sep 29, 2013 9:28:57 PM winstone.Logger logInternal SEVERE: Error within request handler thread winstone.WinstoneException: Unknown AJP packet type - 0 at winstone.ajp13.Ajp13IncomingPacket.parsePacket(Ajp13IncomingPacket.java:80) at winstone.ajp13.Ajp13Listener.allocateRequestResponse(Ajp13Listener.java:184) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:69) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at java.util.concurrent.FutureTask.run(FutureTask.java:166) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) -- 8< ------ 8< ------ 8< ----
            Hide
            karjri Riku added a comment -

            Do You have any plans to fix this?

            Show
            karjri Riku added a comment - Do You have any plans to fix this?
            Hide
            jchamlin J.C. Hamlin added a comment -

            Having the same (or very similar) problem with SLES 11.2 and Apache 2.2.12, using HTTPS, trying to go to the Winstone AJP connector on Jenkins 1.492. Accessing the Jenkins server directly on port 8080, or through Apache on port 80 with AJP works just fine, it is only when I access it through Apache with HTTPS going to Jenkins with AJP does it fail. The error messages look identical, so I assume this is the same problem.

            [Tue Oct 15 17:48:36 2013] [notice] Apache/2.2.12 (Linux/SUSE) mod_ssl/2.2.12 OpenSSL/0.9.8j-fips configured – resuming normal operations
            [Tue Oct 15 17:49:40 2013] [error] (70014)End of file found: ajp_ilink_receive() can't receive header
            [Tue Oct 15 17:49:40 2013] [error] ajp_read_header: ajp_ilink_receive failed
            [Tue Oct 15 17:49:40 2013] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) (localhost)

            Show
            jchamlin J.C. Hamlin added a comment - Having the same (or very similar) problem with SLES 11.2 and Apache 2.2.12, using HTTPS, trying to go to the Winstone AJP connector on Jenkins 1.492. Accessing the Jenkins server directly on port 8080, or through Apache on port 80 with AJP works just fine, it is only when I access it through Apache with HTTPS going to Jenkins with AJP does it fail. The error messages look identical, so I assume this is the same problem. [Tue Oct 15 17:48:36 2013] [notice] Apache/2.2.12 (Linux/SUSE) mod_ssl/2.2.12 OpenSSL/0.9.8j-fips configured – resuming normal operations [Tue Oct 15 17:49:40 2013] [error] (70014)End of file found: ajp_ilink_receive() can't receive header [Tue Oct 15 17:49:40 2013] [error] ajp_read_header: ajp_ilink_receive failed [Tue Oct 15 17:49:40 2013] [error] (120006)APR does not understand this error code: proxy: read response failed from (null) (localhost)
            Hide
            jchamlin J.C. Hamlin added a comment -

            With Jenkins 1.535 the problem has gone away, and it appears to be working just fine for me. I would say this issue has been addressed and should be closed. If there are other issues with AJP, they should be opened in a new JIRA ticket.

            Show
            jchamlin J.C. Hamlin added a comment - With Jenkins 1.535 the problem has gone away, and it appears to be working just fine for me. I would say this issue has been addressed and should be closed. If there are other issues with AJP, they should be opened in a new JIRA ticket.
            Hide
            rstone Rocky Stone added a comment -

            Note that Jenkins 1.535 is the first version using Jetty instead of Winstone, that's what may have fixed the issue.

            Show
            rstone Rocky Stone added a comment - Note that Jenkins 1.535 is the first version using Jetty instead of Winstone, that's what may have fixed the issue.
            Hide
            felixbuenemann Felix Buenemann added a comment - - edited

            I was getting 500 Internal Server errors on the j_acegi_security_check page in jenkins 1.558 directly after login when using AJP with Apache 2.2.22 and mod_proxy_ajp on Debian Wheezy. The error logged by jenkins:

             
            WARNING: AJP13 message type ({PING}: 0 ) not supported/recognized as an AJP request
            May 7, 2014 2:15:08 AM org.eclipse.jetty.util.log.JavaUtilLog warn
            WARNING: handle failed?
            java.lang.IllegalStateException: PING is not implemented
                    at org.eclipse.jetty.ajp.Ajp13Parser.parseNext(Ajp13Parser.java:335)
                    at org.eclipse.jetty.ajp.Ajp13Parser.parseAvailable(Ajp13Parser.java:158)
                    at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
                    at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
                    at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
                    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
                    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
                    at java.lang.Thread.run(Thread.java:679)
            

            Apache Error Log:

            [error] (70014)End of file found: ajp_ilink_receive() can't receive header
            [error] ajp_read_header: ajp_ilink_receive failed
            [error] (120006)APR does not understand this error code: proxy: dialog to 127.0.0.1:8009 (localhost) failed
            

            I solved it by switching to HTTP.

            Relevant config:

             
            AllowEncodedSlashes NoDecode
            ProxyPass / http://localhost:8080/ nocanon retry=0
            ProxyPassReverse / http://localhost:8080/
            # Causes error "PING is not implemented" in jetty ajp implementation
            # ProxyPass / ajp://localhost:8009/ nocanon retry=0
            # ProxyPassReverse / ajp://localhost:8009/
            
            Show
            felixbuenemann Felix Buenemann added a comment - - edited I was getting 500 Internal Server errors on the j_acegi_security_check page in jenkins 1.558 directly after login when using AJP with Apache 2.2.22 and mod_proxy_ajp on Debian Wheezy. The error logged by jenkins: WARNING: AJP13 message type ({PING}: 0 ) not supported/recognized as an AJP request May 7, 2014 2:15:08 AM org.eclipse.jetty.util.log.JavaUtilLog warn WARNING: handle failed? java.lang.IllegalStateException: PING is not implemented at org.eclipse.jetty.ajp.Ajp13Parser.parseNext(Ajp13Parser.java:335) at org.eclipse.jetty.ajp.Ajp13Parser.parseAvailable(Ajp13Parser.java:158) at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72) at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:679) Apache Error Log: [error] (70014)End of file found: ajp_ilink_receive() can't receive header [error] ajp_read_header: ajp_ilink_receive failed [error] (120006)APR does not understand this error code: proxy: dialog to 127.0.0.1:8009 (localhost) failed I solved it by switching to HTTP. Relevant config: AllowEncodedSlashes NoDecode ProxyPass / http://localhost:8080/ nocanon retry=0 ProxyPassReverse / http://localhost:8080/ # Causes error "PING is not implemented" in jetty ajp implementation # ProxyPass / ajp://localhost:8009/ nocanon retry=0 # ProxyPassReverse / ajp://localhost:8009/
            Hide
            danielbeck Daniel Beck added a comment -

            Has this issue been fixed as a side effect of the switch to Jetty in 1.535? Anyone else experience Felix's problem?

            Show
            danielbeck Daniel Beck added a comment - Has this issue been fixed as a side effect of the switch to Jetty in 1.535? Anyone else experience Felix's problem?
            Hide
            felixbuenemann Felix Buenemann added a comment -

            I was already on 1.558 when I experienced the issue, as mentioned in the previous comment. I haven't tried using AJP since then.

            Show
            felixbuenemann Felix Buenemann added a comment - I was already on 1.558 when I experienced the issue, as mentioned in the previous comment. I haven't tried using AJP since then.
            Hide
            danielbeck Daniel Beck added a comment -

            Jenkins 2.0 upgraded the embedded Jetty-Winstone to Jetty 9, which no longer has AJP support, making this issue obsolete.

            Show
            danielbeck Daniel Beck added a comment - Jenkins 2.0 upgraded the embedded Jetty-Winstone to Jetty 9, which no longer has AJP support, making this issue obsolete.
            Hide
            mirabilos mirabilos added a comment -

            You mean “breaks AJP setups completely”, right?

            There’s a reason we don’t proxy HTTP in the normal case.

            Show
            mirabilos mirabilos added a comment - You mean “breaks AJP setups completely”, right? There’s a reason we don’t proxy HTTP in the normal case.
            Hide
            danielbeck Daniel Beck added a comment -

            You mean “breaks AJP setups completely”, right?

            Yes. We have no control over features implemented in upstream. If you want/need AJP, you can always use a different container.

            Show
            danielbeck Daniel Beck added a comment - You mean “breaks AJP setups completely”, right? Yes. We have no control over features implemented in upstream. If you want/need AJP, you can always use a different container.

              People

              • Assignee:
                Unassigned
                Reporter:
                rombert Robert Munteanu
              • Votes:
                16 Vote for this issue
                Watchers:
                26 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: