Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docker/complement/conf/workers-shared-extra.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#}

## Server ##
public_baseurl: http://127.0.0.1:8008/
Comment thread
anoadragon453 marked this conversation as resolved.
report_stats: False
trusted_key_servers: []
enable_registration: true
Expand Down
2 changes: 1 addition & 1 deletion docker/conf-workers/nginx.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,6 @@ server {
{% endif %}
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $host;
proxy_set_header Host $host:$server_port;
Comment thread
anoadragon453 marked this conversation as resolved.
}
}
2 changes: 1 addition & 1 deletion scripts-dev/complement.sh
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ if [ -z "$skip_docker_build" ]; then

# Build the unified Complement image (from the worker Synapse image we just built).
echo_if_github "::group::Build Docker image: complement/Dockerfile"
$CONTAINER_RUNTIME build -t complement-synapse \
$CONTAINER_RUNTIME build -t ghcr.io/element-hq/synapse/complement-synapse \
-f "docker/complement/Dockerfile" "docker/complement"
echo_if_github "::endgroup::"

Expand Down
1 change: 1 addition & 0 deletions synapse/config/logger.py
Original file line number Diff line number Diff line change
Expand Up @@ -360,5 +360,6 @@ def setup_logging(
"Licensed under the AGPL 3.0 license. Website: https://github.com/element-hq/synapse"
)
logging.info("Server hostname: %s", config.server.server_name)
logging.info("Public Base URL: %s", config.server.public_baseurl)
Comment thread
anoadragon453 marked this conversation as resolved.
logging.info("Instance name: %s", hs.get_instance_name())
logging.info("Twisted reactor: %s", type(reactor).__name__)
7 changes: 7 additions & 0 deletions synapse/http/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@

from synapse.api.errors import SynapseError

import logging

logger = logging.getLogger(__name__)


class RequestTimedOutError(SynapseError):
"""Exception representing timeout of an outbound request"""
Expand Down Expand Up @@ -72,13 +76,16 @@ def get_request_uri(request: IRequest) -> bytes:
def _get_requested_host(request: IRequest) -> bytes:
hostname = request.getHeader(b"host")
if hostname:
logger.info("asdf _get_requested_host hostname from Host header %s", hostname)
return hostname

# no Host header, use the address/port that the request arrived on
host: Union[address.IPv4Address, address.IPv6Address] = request.getHost()

hostname = host.host.encode("ascii")

logger.info("asdf _get_requested_host %s %s", hostname, host.port)

if request.isSecure() and host.port == 443:
# default port for https
return hostname
Expand Down
5 changes: 5 additions & 0 deletions synapse/rest/client/login.py
Original file line number Diff line number Diff line change
Expand Up @@ -653,6 +653,11 @@ async def on_GET(
# get our cookies back.
requested_uri = get_request_uri(request)
baseurl_bytes = self._public_baseurl.encode("utf-8")
logger.info(
"asdf _public_baseurl=%s requested_uri=%s",
self._public_baseurl,
requested_uri.decode("utf-8"),
)
if not requested_uri.startswith(baseurl_bytes):
# swap out the incorrect base URL for the right one.
#
Expand Down