Skip to main content
Skip table of contents

My Viewport doesn't work with a proxy server setup

Symptom

If your Confluence installations runs behind a reverse-proxy or load balancer, you should make sure that both Confluence and the proxy are configured correctly. Some advanced setups, for example running a viewport on a different domain than Confluence, require that values like the URL scheme, the server name, and the server port are correctly passed to the viewport by Tomcat, the enclosing container.

PDF or Word exports from within viewports cannot be downloaded if the viewport domain is different from the Confluence base URL’s domain

Common effects of an incomplete configuration are:

  • Viewports with a custom domain name are not reachable

  • Confluence rejecting certain requests whose server name does not match the name of the host. 

    • For example: POST requests to /rest/webResources/1.0/resources that fail with a status code of 403

Learn more about how to setup custom domains and reverse proxies in Viewport.

Scroll Viewport Proxy Debugger

Scroll Viewport offers a proxy debugger UI which helps you to debug your proxy settings.

You can reach the proxy debugger via:

<confluence-base-url>/plugins/servlet/scroll-viewport/proxy-debugger

Example output

The debugger UI will output information about the following settings for example like this:

Value = the current value Viewport receives.

Expected = the value Viewport expects to receive.

Key

Value

Expected

Status

request.getScheme

http

http

Match

request.getProtocol

HTTP/1.1

request.isSecure

false

false

Match

request.getServerName

localhost

localhost

Match

request.getServerPort

8090

8090

Match

request.getContextPath

request.getRequestURI

/plugins/servlet/scroll-viewport/proxy-debugger

request.getLocalAddr

0:0:0:0:0:0:0:1

request.getLocalPort

8090

request.getRemoteHost

0:0:0:0:0:0:0:1

request.getRemoteAddr

0:0:0:0:0:0:0:1

request.getRemotePort

60331

Header: accept-encoding

gzip, deflate, br

Header: accept-language

en-US,en;q=0.9,de-DE;q=0.8,de;q=0.7

Header: connection

keep-alive

Header: host

localhost:8090

localhost:8090

Match

Header: sec-ch-ua

"Google Chrome";v="89", "Chromium";v="89", ";Not A Brand";v="99"

Header: sec-ch-ua-mobile

?0

Header: sec-fetch-dest

document

Header: sec-fetch-mode

navigate

Header: sec-fetch-site

none

Header: sec-fetch-user

?1

Header: upgrade-insecure-requests

1



JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.