Redirect root to www virtual host and provision certs on demand

Sorry, I goofed when copy/pasting from notes. Those errors were not present in my file. It currently looks like this:

{
    on_demand_tls {
        ask IP
    }
}

:80 {
    redir https://www.{host}{uri}
}

:443 {
    tls tls@example.com {
        on_demand
    }
    reverse_proxy IP:7777
}

Issuing a request to a domain gives the following result:

curl -vL --head http://francecyclingtours.com
* Rebuilt URL to: http://francecyclingtours.com/
*   Trying 192.155.90.186...
* TCP_NODELAY set
* Connected to francecyclingtours.com (192.155.90.186) port 80 (#0)
> HEAD / HTTP/1.1
> Host: francecyclingtours.com
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 302 Found
HTTP/1.1 302 Found
< Location: https://www.francecyclingtours.com/
Location: https://www.francecyclingtours.com/
< Server: Caddy
Server: Caddy
< Date: Wed, 25 Nov 2020 02:22:47 GMT
Date: Wed, 25 Nov 2020 02:22:47 GMT

<
* Connection #0 to host francecyclingtours.com left intact
* Issue another request to this URL: 'https://www.francecyclingtours.com/'
*   Trying 192.155.90.186...
* TCP_NODELAY set
* Connected to www.francecyclingtours.com (192.155.90.186) port 443 (#1)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS alert, Server hello (2):
* error:14004438:SSL routines:CONNECT_CR_SRVR_HELLO:tlsv1 alert internal error
* stopped the pause stream!
* Closing connection 1
curl: (35) error:14004438:SSL routines:CONNECT_CR_SRVR_HELLO:tlsv1 alert internal error