Hi,

We're using Apache 2.4.20 on Windows. Apache configured to proxy requests
to Tomcat (8.5.16) using AJP.

Relevant configuration from httpd.conf:
##############################
<VirtualHost *:443>
  SSLEngine On
  SSLProxyEngine On
  .............
  RewriteEngine on
  RewriteCond %{HTTP:X-custom-header}  ^someheader.*
  RewriteCond %{SSL:SSL_CLIENT_VERIFY} ^SUCCESS$
  RewriteRule ^/(.*) ajp://127.0.0.1:8009/$1 [P]
  ProxyPassReverse / ajp://127.0.0.1:8009/
  Header set Server ""
  ......
</VirtualHost>
##############################

Relevant configuration from server.xml:
#############################
<Connector port="8009" address="127.0.0.1" protocol="AJP/1.3"/>
#############################

In some rare cases which we fail to reproduce consistently one specific
request if always rejected with HTTP error code 400 Bad Request and the
following error is logged in Apache error log:
##############################
BufferOverflowException 4 2337
ajp_marshal_into_msgb: *Error appending the SSL certificates*
ajp_send_header: ajp_marshal_into_msgb failed
... request failed to  (null) (*)
################################

Another requests with the same configuration pass without any problem. The
problematic request is not big and headers are the same as headers for
another requests.

Should we increase ProxyIOBufferSize or is there any different workaround?

Thanks!

Reply via email to