templates/zerver/config_error/proxy.html
{% extends "zerver/config_error/container.html" %} {% macro setting() -%} {%- if docker_config -%} LOADBALANCER_IPS in your Docker image's environment {%- else -%} ips in the [loadbalancer] section of /etc/zulip/zulip.conf {%- endif -%} {%- endmacro %} {% block error_body %} {% if not current_proxies and not x_forwarded_for %}
You have not configured any reverse proxies in {{ setting() }}, and an HTTP request was received without any reverse proxy headers. Zulip requires that all client traffic to it be over HTTPS. Since you have configured Zulip itself to be served over HTTP, it must be placed behind a proxy which does TLS termination.
You must configure a reverse proxy in front of Zulip which serves traffic over HTTPS, and configure Zulip to trust that proxy, by adding its IP to {{ setting() }}. See our documentation about deploying behind reverse proxies for more details.
{% elif not current_proxies %}
You have not configured any reverse proxies in {{ setting() }}, but reverse proxy headers were detected in a request from {{ remote_addr }}.
Add {{ remote_addr }} to {{ setting() }} and restart your Zulip server. See our documentation about deploying behind reverse proxies for more details.
{% elif not x_forwarded_proto %}
You have configured reverse proxies ({{ current_proxies }}), and traffic is being served through them, but the remote proxy did not send an X-Forwarded-Proto header.
Please read our documentation about configuring your reverse proxy, and configure your proxy to send an X-Forwarded-Proto header.
{% else %}
You have configured reverse proxies ({{ current_proxies }}), but this request did not come from a matching IP address -- it came from {{ remote_addr }}.
You should update {{ setting() }} to include {{ remote_addr }}, and restart your Zulip server. See our documentation about deploying behind reverse proxies for more details.
{% endif %}
{% for item in all_headers -%}
{% if item[1] != "" -%}
{{ item[0] }}: {{ item[1] }}
{% endif -%}
{% endfor -%}
{% endblock %}