Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jetty-users] Jetty 302 response on POST via Apache Reverse Proxy

This is the first time I have used Jetty so please bear with me, I’m 100% sure I’m not reading the documentation correctly 

1. Issue 

- Every POST request via Apache (Reverse Proxy enabled) im retured a 302 reopens from Jetty(9.3.2.v20150730)

curl -v -X POST -d "execution=e1s2" https://test-site.test.ac.nz/profile/SAML2/Redirect/SSO -H "X-Forwarded-Proto: https” 

*   Trying 130.216.158.108...
* Connected to test-site.test.ac.nz (10.5.6.33) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
* Server certificate: test-site.test.ac.nz
* Server certificate: QuoVadis EV SSL ICA G1
* Server certificate: QuoVadis Root CA 2
> POST /profile/SAML2/Redirect/SSO HTTP/1.1
> Host: test-site.test.ac.nz
> User-Agent: curl/7.43.0
> Accept: */*
> X-Forwarded-Proto: https
> Content-Length: 14
> Content-Type: application/x-www-form-urlencoded
> 
* upload completely sent off: 14 out of 14 bytes
< HTTP/1.1 302 Found
< Date: Fri, 22 Jul 2016 04:32:19 GMT
< Server: Jetty(9.3.2.v20150730)
< Strict-Transport-Security: max-age=31536000
< Expires: Thu, 01 Jan 1970 00:00:00 GMT
< Cache-Control: no-store
< Location: https://test-site.test.ac.nz/profile/SAML2/Redirect/SSO;jsessionid=1px41i9gp8uut1g5wxfbvkrx5w
< Content-Length: 0
< Set-Cookie: JSESSIONID=1px41i9gp8uut1g5wxfbvkrx5w;Path=/;Secure
< X-UA-Compatible: IE=8
< Content-Type: text/plain; charset=UTF-8
< 

2. Jetty Setting 

2.1 jetty-rewrite.xml

- Standard Redirect Config 

<Set name="handler">
    <New id="Rewrite" class="org.eclipse.jetty.rewrite.handler.RewriteHandler">
      <Set name="handler"><Ref refid="oldhandler"/></Set>
      <Set name="rewriteRequestURI"><Property name="jetty.rewrite.rewriteRequestURI" deprecated="rewrite.rewriteRequestURI" default="true"/></Set>
      <Set name="rewritePathInfo"><Property name="jetty.rewrite.rewritePathInfo" deprecated="rewrite.rewritePathInfo" default="false"/></Set>
      <Set name="originalPathAttribute"><Property name="jetty.rewrite.originalPathAttribute" deprecated="rewrite.originalPathAttribute" default="requestedPath"/></Set>
    </New>
  </Set>

content file properties 

<Configure class="org.eclipse.jetty.webapp.WebAppContext">
    <Set name="war">/opt/shibboleth-idp/war/idp.war</Set>
    <Set name="contextPath">/</Set>
    <Set name="extractWAR">false</Set>
    <Set name="copyWebDir">false</Set>
    <Set name="copyWebInf">true</Set>
    <Set name="tempDirectory">/opt/jetty/tmp</Set>
</Configure>


2.1 Reverse Proxy Settings 

RewriteCond %{REQUEST_URI} ^/profile/.*
RewriteRule .* https://backend.test.ac.nz:8443$0 [QSA,P,L]

(Very basic reverse Proxy setting ) 

If I add a forward slash to the path "https://test-site.test.ac.nz/profile/SAML2/Redirect/SSO/“ Im returned the correct response, how do I tell Jetty not to redirect my request if I don’t include the forward slash or is there a document outlining the procedure ? 

Reid 



Back to the top