<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Mon Feb 22 09:51:41 CST 2021 -->
<title>ForwardedRequestCustomizer (Jetty :: Project 9.4.37.v20210219 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-02-22">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="ForwardedRequestCustomizer (Jetty :: Project 9.4.37.v20210219 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":42,"i13":9,"i14":10,"i15":9,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":42,"i31":10,"i32":10,"i33":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ForwardedRequestCustomizer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.server</a></div>
<h2 title="Class ForwardedRequestCustomizer" class="title">Class ForwardedRequestCustomizer</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.server.ForwardedRequestCustomizer</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="HttpConfiguration.Customizer.html" title="interface in org.eclipse.jetty.server">HttpConfiguration.Customizer</a></code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">ForwardedRequestCustomizer</span>
extends java.lang.Object
implements <a href="HttpConfiguration.Customizer.html" title="interface in org.eclipse.jetty.server">HttpConfiguration.Customizer</a></pre>
<div class="block">Customize Requests for Proxy Forwarding.
 <p>
 This customizer looks at at HTTP request for headers that indicate
 it has been forwarded by one or more proxies.  Specifically handled are
 <ul>
 <li><code>Forwarded</code>, as defined by <a href="https://tools.ietf.org/html/rfc7239">rfc7239</a>
 <li><code>X-Forwarded-Host</code></li>
 <li><code>X-Forwarded-Server</code></li>
 <li><code>X-Forwarded-For</code></li>
 <li><code>X-Forwarded-Proto</code></li>
 <li><code>X-Proxied-Https</code></li>
 </ul>
 <p>If these headers are present, then the <a href="Request.html" title="class in org.eclipse.jetty.server"><code>Request</code></a> object is updated
 so that the proxy is not seen as the other end point of the connection on which
 the request came</p>
 <p>Headers can also be defined so that forwarded SSL Session IDs and Cipher
 suites may be customised</p>
 <p>
     The Authority (host and port) is updated on the <a href="Request.html" title="class in org.eclipse.jetty.server"><code>Request</code></a> object based
     on the host / port information in the following search order.
 </p>
 <table style="border: 1px solid black; border-collapse: separate; border-spacing: 0px;">
     <caption style="font-weight: bold; font-size: 1.2em">Request Authority Search Order</caption>
     <colgroup>
         <col><col style="width: 15%"><col><col><col><col>
     </colgroup>
     <thead style="background-color: lightgray">
         <tr>
             <th>#</th>
             <th>Value Origin</th>
             <th>Host</th>
             <th>Port</th>
             <th>Protocol</th>
             <th>Notes</th>
         </tr>
     </thead>
     <tbody style="text-align: left; vertical-align: top;">
         <tr>
             <td>1</td>
             <td><code>Forwarded</code> Header</td>
             <td>"<code>host=&lt;host&gt;</code>" param (Required)</td>
             <td>"<code>host=&lt;host&gt;:&lt;port&gt;</code> param (Implied)</td>
             <td>"<code>proto=&lt;value&gt;</code>" param (Optional)</td>
             <td>From left-most relevant parameter (see <a href="https://tools.ietf.org/html/rfc7239">rfc7239</a>)</td>
         </tr>
         <tr>
             <td>2</td>
             <td><code>X-Forwarded-Host</code> Header</td>
             <td>Required</td>
             <td>Implied</td>
             <td>n/a</td>
             <td>left-most value</td>
         </tr>
         <tr>
             <td>3</td>
             <td><code>X-Forwarded-Port</code> Header</td>
             <td>n/a</td>
             <td>Required</td>
             <td>n/a</td>
             <td>left-most value (only if <a href="#getForwardedPortAsAuthority()"><code>getForwardedPortAsAuthority()</code></a> is true)</td>
         </tr>
         <tr>
             <td>4</td>
             <td><code>X-Forwarded-Server</code> Header</td>
             <td>Required</td>
             <td>Optional</td>
             <td>n/a</td>
             <td>left-most value</td>
         </tr>
         <tr>
             <td>5</td>
             <td><code>X-Forwarded-Proto</code> Header</td>
             <td>n/a</td>
             <td>Implied from value</td>
             <td>Required</td>
             <td>
                 <p>left-most value becomes protocol.</p>
                 <ul>
                     <li>Value of "<code>http</code>" means port=80.</li>
                     <li>Value of "<a href="HttpConfiguration.html#getSecureScheme()"><code>HttpConfiguration.getSecureScheme()</code></a>" means port=<a href="HttpConfiguration.html#getSecurePort()"><code>HttpConfiguration.getSecurePort()</code></a>.</li>
                 </ul>
             </td>
         </tr>
         <tr>
             <td>6</td>
             <td><code>X-Proxied-Https</code> Header</td>
             <td>n/a</td>
             <td>Implied from value</td>
             <td>boolean</td>
             <td>
                 <p>left-most value determines protocol and port.</p>
                 <ul>
                     <li>Value of "<code>on</code>" means port=<a href="HttpConfiguration.html#getSecurePort()"><code>HttpConfiguration.getSecurePort()</code></a>, and protocol=<a href="HttpConfiguration.html#getSecureScheme()"><code>HttpConfiguration.getSecureScheme()</code></a>).</li>
                     <li>Value of "<code>off</code>" means port=80, and protocol=http.</li>
                 </ul>
             </td>
         </tr>
     </tbody>
 </table></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://en.wikipedia.org/wiki/X-Forwarded-For">Wikipedia: X-Forwarded-For</a>, 
<a href="https://tools.ietf.org/html/rfc7239">RFC 7239: Forwarded HTTP Extension</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ForwardedRequestCustomizer.Source.html" title="enum in org.eclipse.jetty.server">ForwardedRequestCustomizer.Source</a></span></code></th>
<td class="colLast">
<div class="block">Ordered Source Enum.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">ForwardedRequestCustomizer</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#customize(org.eclipse.jetty.server.Connector,org.eclipse.jetty.server.HttpConfiguration,org.eclipse.jetty.server.Request)">customize</a></span>&#8203;(<a href="Connector.html" title="interface in org.eclipse.jetty.server">Connector</a>&nbsp;connector,
         <a href="HttpConfiguration.html" title="class in org.eclipse.jetty.server">HttpConfiguration</a>&nbsp;config,
         <a href="Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForcedHost()">getForcedHost</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedCipherSuiteHeader()">getForwardedCipherSuiteHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedForHeader()">getForwardedForHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedHeader()">getForwardedHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedHostHeader()">getForwardedHostHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedHttpsHeader()">getForwardedHttpsHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedPortAsAuthority()">getForwardedPortAsAuthority</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedPortHeader()">getForwardedPortHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedProtoHeader()">getForwardedProtoHeader</a></span>()</code></th>
<td class="colLast">
<div class="block">Get the forwardedProtoHeader.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedServerHeader()">getForwardedServerHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getForwardedSslSessionIdHeader()">getForwardedSslSessionIdHeader</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getHostHeader()">getHostHeader</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected static java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLeftMost(java.lang.String)">getLeftMost</a></span>&#8203;(java.lang.String&nbsp;headerValue)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getProxyAsAuthority()">getProxyAsAuthority</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected static int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSecurePort(org.eclipse.jetty.server.HttpConfiguration)">getSecurePort</a></span>&#8203;(<a href="HttpConfiguration.html" title="class in org.eclipse.jetty.server">HttpConfiguration</a>&nbsp;config)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSslIsSecure()">isSslIsSecure</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#onError(org.eclipse.jetty.http.HttpField,java.lang.Throwable)">onError</a></span>&#8203;(<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field,
       java.lang.Throwable&nbsp;t)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForcedHost(java.lang.String)">setForcedHost</a></span>&#8203;(java.lang.String&nbsp;hostAndPort)</code></th>
<td class="colLast">
<div class="block">Set a forced valued for the host header to control what is returned by <code>ServletRequest.getServerName()</code> and <code>ServletRequest.getServerPort()</code>.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedCipherSuiteHeader(java.lang.String)">setForwardedCipherSuiteHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedCipherSuiteHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedForHeader(java.lang.String)">setForwardedForHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedRemoteAddressHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedHeader(java.lang.String)">setForwardedHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedHostHeader(java.lang.String)">setForwardedHostHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedHostHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedHttpsHeader(java.lang.String)">setForwardedHttpsHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedHttpsHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedOnly(boolean)">setForwardedOnly</a></span>&#8203;(boolean&nbsp;rfc7239only)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedPortAsAuthority(boolean)">setForwardedPortAsAuthority</a></span>&#8203;(boolean&nbsp;forwardedPortAsAuthority)</code></th>
<td class="colLast">
<div class="block">Set if the X-Forwarded-Port header will be used for Authority</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedPortHeader(java.lang.String)">setForwardedPortHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedPortHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedProtoHeader(java.lang.String)">setForwardedProtoHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedProtoHeader)</code></th>
<td class="colLast">
<div class="block">Set the forwardedProtoHeader.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedServerHeader(java.lang.String)">setForwardedServerHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedServerHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setForwardedSslSessionIdHeader(java.lang.String)">setForwardedSslSessionIdHeader</a></span>&#8203;(java.lang.String&nbsp;forwardedSslSessionIdHeader)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setHostHeader(java.lang.String)">setHostHeader</a></span>&#8203;(java.lang.String&nbsp;hostHeader)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setProxyAsAuthority(boolean)">setProxyAsAuthority</a></span>&#8203;(boolean&nbsp;proxyAsAuthority)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setSslIsSecure(boolean)">setSslIsSecure</a></span>&#8203;(boolean&nbsp;sslIsSecure)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ForwardedRequestCustomizer</h4>
<pre>public&nbsp;ForwardedRequestCustomizer()</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="getProxyAsAuthority()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProxyAsAuthority</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;getProxyAsAuthority()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the proxy address obtained via
 <code>X-Forwarded-Server</code> or RFC7239 "by" is used as
 the request authority. Default false</dd>
</dl>
</li>
</ul>
<a id="setProxyAsAuthority(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setProxyAsAuthority</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setProxyAsAuthority&#8203;(boolean&nbsp;proxyAsAuthority)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>proxyAsAuthority</code> - if true, use the proxy address obtained via
 <code>X-Forwarded-Server</code> or RFC7239 "by" as the request authority.</dd>
</dl>
</li>
</ul>
<a id="setForwardedOnly(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedOnly</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedOnly&#8203;(boolean&nbsp;rfc7239only)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rfc7239only</code> - Configure to only support the RFC7239 Forwarded header and to
 not support any <code>X-Forwarded-</code> headers.   This convenience method
 clears all the non RFC headers if passed true and sets them to
 the default values (if not already set) if passed false.</dd>
</dl>
</li>
</ul>
<a id="getForcedHost()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForcedHost</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForcedHost()</pre>
</li>
</ul>
<a id="setForcedHost(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForcedHost</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForcedHost&#8203;(java.lang.String&nbsp;hostAndPort)</pre>
<div class="block">Set a forced valued for the host header to control what is returned by <code>ServletRequest.getServerName()</code> and <code>ServletRequest.getServerPort()</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>hostAndPort</code> - The value of the host header to force.</dd>
</dl>
</li>
</ul>
<a id="getForwardedHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The header name for RFC forwarded (default Forwarded)</dd>
</dl>
</li>
</ul>
<a id="setForwardedHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedHeader&#8203;(java.lang.String&nbsp;forwardedHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedHeader</code> - The header name for RFC forwarded (default Forwarded)</dd>
</dl>
</li>
</ul>
<a id="getForwardedHostHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedHostHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedHostHeader()</pre>
</li>
</ul>
<a id="setForwardedHostHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedHostHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedHostHeader&#8203;(java.lang.String&nbsp;forwardedHostHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedHostHeader</code> - The header name for forwarded hosts (default <code>X-Forwarded-Host</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedServerHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedServerHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedServerHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the header name for forwarded server.</dd>
</dl>
</li>
</ul>
<a id="setForwardedServerHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedServerHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedServerHeader&#8203;(java.lang.String&nbsp;forwardedServerHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedServerHeader</code> - The header name for forwarded server (default <code>X-Forwarded-Server</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedForHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedForHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedForHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the forwarded for header</dd>
</dl>
</li>
</ul>
<a id="setForwardedForHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedForHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedForHeader&#8203;(java.lang.String&nbsp;forwardedRemoteAddressHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedRemoteAddressHeader</code> - The header name for forwarded for (default <code>X-Forwarded-For</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedPortHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedPortHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedPortHeader()</pre>
</li>
</ul>
<a id="setForwardedPortHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedPortHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedPortHeader&#8203;(java.lang.String&nbsp;forwardedPortHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedPortHeader</code> - The header name for forwarded hosts (default <code>X-Forwarded-Port</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedPortAsAuthority()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedPortAsAuthority</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;getForwardedPortAsAuthority()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>if true, the X-Forwarded-Port header applies to the authority,
 else it applies to the remote client address</dd>
</dl>
</li>
</ul>
<a id="setForwardedPortAsAuthority(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedPortAsAuthority</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedPortAsAuthority&#8203;(boolean&nbsp;forwardedPortAsAuthority)</pre>
<div class="block">Set if the X-Forwarded-Port header will be used for Authority</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedPortAsAuthority</code> - if true, the X-Forwarded-Port header applies to the authority,
 else it applies to the remote client address</dd>
</dl>
</li>
</ul>
<a id="getForwardedProtoHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedProtoHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedProtoHeader()</pre>
<div class="block">Get the forwardedProtoHeader.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the forwardedProtoHeader (default <code>X-Forwarded-Proto</code>)</dd>
</dl>
</li>
</ul>
<a id="setForwardedProtoHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedProtoHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedProtoHeader&#8203;(java.lang.String&nbsp;forwardedProtoHeader)</pre>
<div class="block">Set the forwardedProtoHeader.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedProtoHeader</code> - the forwardedProtoHeader to set (default <code>X-Forwarded-Proto</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedCipherSuiteHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedCipherSuiteHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedCipherSuiteHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The header name holding a forwarded cipher suite (default <code>Proxy-auth-cert</code>)</dd>
</dl>
</li>
</ul>
<a id="setForwardedCipherSuiteHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedCipherSuiteHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedCipherSuiteHeader&#8203;(java.lang.String&nbsp;forwardedCipherSuiteHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedCipherSuiteHeader</code> - The header name holding a forwarded cipher suite (default <code>Proxy-auth-cert</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedSslSessionIdHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedSslSessionIdHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedSslSessionIdHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The header name holding a forwarded SSL Session ID (default <code>Proxy-ssl-id</code>)</dd>
</dl>
</li>
</ul>
<a id="setForwardedSslSessionIdHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedSslSessionIdHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedSslSessionIdHeader&#8203;(java.lang.String&nbsp;forwardedSslSessionIdHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedSslSessionIdHeader</code> - The header name holding a forwarded SSL Session ID (default <code>Proxy-ssl-id</code>)</dd>
</dl>
</li>
</ul>
<a id="getForwardedHttpsHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForwardedHttpsHeader</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;getForwardedHttpsHeader()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The header name holding a forwarded Https status indicator (on|off true|false) (default <code>X-Proxied-Https</code>)</dd>
</dl>
</li>
</ul>
<a id="setForwardedHttpsHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForwardedHttpsHeader</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setForwardedHttpsHeader&#8203;(java.lang.String&nbsp;forwardedHttpsHeader)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>forwardedHttpsHeader</code> - the header name holding a forwarded Https status indicator(default <code>X-Proxied-Https</code>)</dd>
</dl>
</li>
</ul>
<a id="isSslIsSecure()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSslIsSecure</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isSslIsSecure()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the presence of an SSL session or certificate header is sufficient
 to indicate a secure request (default is true)</dd>
</dl>
</li>
</ul>
<a id="setSslIsSecure(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSslIsSecure</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setSslIsSecure&#8203;(boolean&nbsp;sslIsSecure)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sslIsSecure</code> - true if the presence of an SSL session or certificate header is sufficient
 to indicate a secure request (default is true)</dd>
</dl>
</li>
</ul>
<a id="customize(org.eclipse.jetty.server.Connector,org.eclipse.jetty.server.HttpConfiguration,org.eclipse.jetty.server.Request)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>customize</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;customize&#8203;(<a href="Connector.html" title="interface in org.eclipse.jetty.server">Connector</a>&nbsp;connector,
                      <a href="HttpConfiguration.html" title="class in org.eclipse.jetty.server">HttpConfiguration</a>&nbsp;config,
                      <a href="Request.html" title="class in org.eclipse.jetty.server">Request</a>&nbsp;request)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="HttpConfiguration.Customizer.html#customize(org.eclipse.jetty.server.Connector,org.eclipse.jetty.server.HttpConfiguration,org.eclipse.jetty.server.Request)">customize</a></code>&nbsp;in interface&nbsp;<code><a href="HttpConfiguration.Customizer.html" title="interface in org.eclipse.jetty.server">HttpConfiguration.Customizer</a></code></dd>
</dl>
</li>
</ul>
<a id="getSecurePort(org.eclipse.jetty.server.HttpConfiguration)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurePort</h4>
<pre class="methodSignature">protected static&nbsp;int&nbsp;getSecurePort&#8203;(<a href="HttpConfiguration.html" title="class in org.eclipse.jetty.server">HttpConfiguration</a>&nbsp;config)</pre>
</li>
</ul>
<a id="onError(org.eclipse.jetty.http.HttpField,java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onError</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;onError&#8203;(<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field,
                       java.lang.Throwable&nbsp;t)</pre>
</li>
</ul>
<a id="getLeftMost(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLeftMost</h4>
<pre class="methodSignature">protected static&nbsp;java.lang.String&nbsp;getLeftMost&#8203;(java.lang.String&nbsp;headerValue)</pre>
</li>
</ul>
<a id="toString()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="getHostHeader()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHostHeader</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;java.lang.String&nbsp;getHostHeader()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="setHostHeader(java.lang.String)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setHostHeader</h4>
<pre class="methodSignature">@Deprecated
public&nbsp;void&nbsp;setHostHeader&#8203;(java.lang.String&nbsp;hostHeader)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Set a forced valued for the host header to control what is returned by <code>ServletRequest.getServerName()</code> and <code>ServletRequest.getServerPort()</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>hostHeader</code> - The value of the host header to force.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ForwardedRequestCustomizer.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
