+

Search Tips   |   Advanced Search

HTTP proxy server custom properties

We can add the following custom properties to the configuration settings for an HTTP proxy server.

To specify custom properties for a specific HTTP proxy server, navigate to the custom properties page, and specify a value for the custom property.

  1. In the console, open the configuration tab for the server...

      Servers | Server Types | WebSphere proxy servers | proxy_server_name | HTTP Proxy Server Settings | Proxy settings | Additional properties | Custom properties | New

  2. On the settings page, type the custom property to configure in the Name field, and type the value of the custom property in the Value field.

  3. Click Apply or OK.

  4. Click Save on the console task bar to save your configuration changes.

  5. Restart the server.

The following list of HTTP proxy server custom properties is provided with the product. These properties are not shown on the settings page for an HTTP proxy server.


cache.ignore.header.Authorization

Proxy will ignore the Authorization header in the requests if set the custom property to true. If the response is also able to be cached, proxy will cache the response.

Information Value
Data type Boolean
Default false


cache.ignore.header.Cookie

Proxy to ignore the cookie header in the requests if set the custom property to true. If the response is also able to be cached, proxy will cache the response.

Information Value
Data type Boolean
Default false


cache.ignore.header.Proxy-Authorization

Proxy will ignore the Proxy-Authorization header in the requests if set the custom property to true. If the response is also able to be cached, proxy will cache the response.

Information Value
Data type Boolean
Default false


cache.query.string

Whether the default proxy cache key generator uses both the URL path and query string information to generate the cache key. To enable this function, set the custom property to true. However, if you enable Edge Side Include (ESI) caching on the proxy server, this custom property is not used. If we do not set this custom property, the proxy server generates a cache key based on the URL path only and not based on the query string information.

For more information on ESI caching, see Configuring Edge Side Include caching.

Information Value
Data type String


http.auto.redirect.correction

Whether the proxy server should try to correct the value in the location header when a 302 response is returned from the generic server cluster.

If we specify none for this property, the proxy server never tries to correct the value in the location header when a 302 response is returned.

If we specify gsc for this property, the proxy server tries to correct the value in the location header only when the 302 response is returned from the generic server cluster.

If we specify managed for this property, the proxy server tries to correct the value in the location header only when the 302 response is returned from a managed server.

If we specify all for this property, the proxy server tries to correct the value in the location header whenever a 302 response is returned.

The junction rewrite rule overrides the value specified for this custom property. gotcha

Information Value
Data type String
Acceptable values none, gsc, managed, or all
Default gsc


http.cache.nocache.headers

Set-cookie headers that we do not want to cache when the proxy server receives a response. By default, the proxy server stores set-cookie headers in the proxy cache. If the Cache-Control header information is not set properly, the proxy server might store some session-related, user private cookies. We can use this custom property to specify which set-cookie headers we do not want to store in the proxy cache.

Information Value
Data type A comma-separated string of HTTP header names

For example, you might provide the following values: Set-Cookie,Set-Cookie2. As a result, the proxy server does not store Set-Cookie and Set-Cookie2 HTTP headers in the proxy cache.


http.clientInfoFromTrustedIntermediary

Whether the proxy should extract the IP address from a WAS private header in a request. When the plug-in is deployed in front the proxy, the proxy server extracts the client IP address from the channels instead of from private headers forwarded from the plug-in. If true, the proxy server extracts client information from private HTTP headers sent from the trusted plug-in instead of the channels.

Information Value
Data type String
Default false


http.connectionPoolUseForPOST

Whether the proxy server uses connection pooling for POST requests. POST requests, by default, are neither pooled, nor persistent requests. If excessive POST requests are sent through the proxy server, port exhaustion might occur, resulting in bind exceptions. If true, connection pooling is used for POST requests.

Information Value
Data type boolean
Default false


http.connectRetryLimit

How many times the WebSphere Proxy Server attempts to establish a connection with the back end server before that server is marked as down.

If we do not add this custom property to the WebSphere Proxy Server settings, whenever the WebSphere Proxy Server fails to make a connection to a back end server, that server is marked as down, and no more requests are routed to that server until the amount of time specified for the retryAfterValue custom property elapses, even if another connection attempt would have been successful. For example, the first attempt to make a connection might have failed because an ephemeral port is reused too quickly, and the prior connection is still in a TIME_WAIT state.

Information Value
Data type Integer
Default 0


http.disable.retry.on.503.uriprefix

Specifies URI prefixes for which we do not want the proxy server to automatically retry other servers when the proxy server receives a 503 response from the backend server to which it sent the initial request.

Typically when the proxy server receives a 503 response from a backend server, it marks the backend server as being down, and tries to send the request to another server. If, for specific URI prefixes, we do not want the proxy server to mark the backend server down, and to automatically retry other servers, we can specify those prefixes as the value of this custom property. For any URI prefix specified for this property, if the proxy server receives a 503 response to that request from the backend server, the proxy server returns a 503 response directly to the client instead of retrying the request. The proxy server also does not mark the backend server as being down.

Information Value
Data type string that consists URI prefixes separated by commas
Default No default value


http.disableresponsebufferingurls

Specifies under what conditions a proxy server buffers a response for heartbeat applications.

The value of the property is a comma-separated URL pattern, such as /application_a/.*html;/application_b/.*html. For example, if the proxy server receives a /application_a/heartbeat.html request, which matches one of the URI patterns in the custom property, the proxy server does not buffer the response body for the request. In this example, if the proxy server returns a byte, it forwards the byte to the client side without buffering.

Without this custom property, the proxy server receives responses and buffers the response body until the partial response body limit is reached.

Important: The buffering process might improve proxy server performance, however, it might cause client-side connection time-outs for some heartbeat applications.


http.isDisable10ResponseCaching

Whether the proxy should unchunk, and buffer the response for an HTTP 1.0 client.

If the http.isDisable10ResponseCaching property is set to true, the proxy server does not generate the content length header, and does not include chunked data in the client side response. Instead, the proxy server closes the connection at the end mark of the response body.

Information Value
Data type boolean
Default false


http.log.history

Enables you to increase the number of history files for the proxy server log files.

The proxy server log files are the proxy.log, local.log, and cache.log files. Without this custom property, we have one history file for these proxy server log files.

Information Value
Data type Boolean
Default 1


(V8502) http.log.history.backup.list

Enables you to check for history files in the proxy server logs directory, and, if found, append them to any new log files created.

When set the http.log.history.backup.list custom property to 1, the proxy server searches the proxy server logs directory for history versions of the cache.log, local.log, and proxy.log files. If history versions are found, they are appended any newer log files created.

For this custom property to take effect, logging has to be enabled for the HTTP Proxy server.

Information Value
Data type Boolean
Default 0


http.maxCachedPayload

Maximum size of a chunked response, for which the proxy server will generate a content-length header.

When the proxy server receives a chunked response for an HTTP 1.0 client, the proxy server assumes that the HTTP 1.0 client cannot handle the chunked message, and tries to un-chunk the message, and calculate the content length for the response body. If the size of the chunked response is equal to, or less than the size limit specified for this property, the proxy server generates a content-length header for the response. If the chunked response exceeds the size limit specified for this property, the proxy returns a 500 error message.

Information Value
Data type integer
Default 100000 byes


http.odcUpdateTimeout

Amount of time, in seconds, for the HTTP proxy server to wait during server startup before routing information. The proxy server waits for the specified number of seconds before binding its ports.

This custom property can be used to configure a delay in startup (before the HTTP/HTTPS ports are bound) for a period of time to allow for the propagation of the routing information. If we set the value to 300, the proxy server waits for 300 seconds to allow time for the routing information to propagate to the proxy server. If the routing information is propagated to the proxy server before 300 seconds, server startup resumes.

Information Value
Data type String
Default 150


http.pmiTimerInterval

Estimated time interval, in milliseconds, after which PMI statistics are recorded in the proxy server.

Avoid trouble: Specifying a value that is lower than the default of 100 milliseconds might impact proxy server performance because the proxy needs to check the current time more frequently.gotcha

Information Value
Data type Integer
Default 100


http.routing.sendReverseProxyNameInHost

Whether ‘the host header is rewritten for content that is not on a WAS content server.

The options for this property are true or false and are not case sensitive. If the value of this property is false, then the host header is rewritten as the host of the target server. If the value for this property is true, then the host header is not rewritten.

Information Value
Data type Boolean
Default false


http.virtual.port.map

Server port mapping information that the backend server uses to send responses back to the correct external website ports.

When port mapping information is configured on a load balancer that is sitting in front of the proxy server, the proxy server might not be able to forward the correct external website port information to the backend server because the external website port number is probably different from the web server plug-in, or proxy server listening port. We can use this custom property to correct the port information before the proxy server passes it on to the backend server.

For example, if the proxy server, or the web server plugi-n is listening on ports 20080 and 20443, but the external website ports are 80, and 443, setting the following custom property for the proxy server enables the proxy server to provide the correct port information to the backend server. The backend server can then send responses to the correct external website ports.

Information Value
Data type String value of port mapping pairs separated by semicolons
Default none


HTTPProxyAdvisorMethodName

Specifies the HTTP method name, which is commonly HEAD, GET for the methods used. The HTTP method name is also the advisor method set on the front end load balancer. The custom property is enabling the proxy to match incoming requests and determine whether the requests are from the load balancer or not.

Information Value
Data type String value (HTTP method name, such as GET or READ)
Default none


HTTPProxyAdvisorStartupDelay

Specifies the HTTP Advisor start up delay in seconds. The default value is 0 seconds.

When the proxy receives a request, it tries to match the request against the custom properties (LBIPAddr, HTTPProxyAdvisorURI, HTTPProxyAdvisorURI, HTTPProxyAdvisorStartupDelay) if they are defined

You do not need to define all of these custom properties. If all of the custom properties are matched, the request is considered to be the advisor request from the front end load balancer.

If current proxy start time is less than the value defined in the HTTPProxyAdvisorStartupDelay custom property, an HTTP 503 error code is returned directly from the proxy server to inform the load balancer that the proxy/backend servers are not ready to service HTTP requests.

If current proxy start time is greater than the value defined in the HTTPProxyAdvisorStartupDelay custom property, the proxy forwards the advisor request to the backend and returns the response back to the front end load balancer. Based on the status code returned from the back-end server, the front end load balancer determines whether the proxy/backend server(s) are ready to service requests.

If the proxy is shutting down, the proxy server returns a 503 error code for the advisor requests. This error code informs the load balancer that the proxy and the backend servers are not able to service further requests and the front end load balancer needs to stop sending requests to this proxy server.

Information Value
Data type Integer (time in seconds)
Default 0


HTTPProxyAdvisorURI

Specifies a fully qualified URI string. This is also the advisor URI set on the front end load balancer. An application on the back-end server must be configured to answer this request URI. The custom property is enabling the proxy to match incoming requests and determine whether the requests are from the load balancer or not.

Information Value
Data type String value (fully qualified URI)
Default none


HTTPProxyAdvisorUserAgent

Front end load balancer user agent name. This custom property is enabling the proxy to match incoming requests and determine whether the requests are from the load balancer or not.

Information Value
Data type String value (HTTP User-Agent header value)
Default none


HTTPSustainedHighVolumeLogging

This custom property can be set on WebSphere proxy servers > Proxy Server name > HTTP Proxy Server Settings > Proxy settings > Custom properties panel.


LBIPAddr

Specifies a semicolon separated IP address list. This custom property is allowing the proxy to match incoming requests and determine whether the requests are from the load balancer or not.

Information Value
Data type String value (IP addresses separated by semicolons)
Default none


localOutboundTCPAddress

Host interface that is dedicated to HTTP traffic. This property determines the interface used to make outbound HTTP connections to the HTTP container.

Information Value
Data type String
Default *


(V8502) normalize.redirect.URL

When set to true, the URI specified on a Proxy server redirect route rule will be normalized, the trailing slash ('/') will be removed. For a value of false, the URI will not be changed. The default value is set to true.


Related concepts

  • Configure Edge Side Include caching


    Related tasks

  • Browse all SIP topics
  • Configure the SIP container