Panic: qtls.ConnectionState not compatible with tls.ConnectionState

1. Caddy version (caddy version):

Master version: github.com/caddyserver/caddy/caddy/caddymain

2. How I run Caddy:

I am following this tutorial: How To Host a Website with Caddy on Ubuntu 18.04 | DigitalOcean I installed Go 1.15.5. Then I built Caddy using the instructions. And I attempted to run it for the first time by simply typing caddy.

a. System environment:

Ubunutu 20.04 LTS(x64)

b. Command:

caddy

c. Service/unit/compose file:

n/a

d. My complete Caddyfile or JSON config:

n/a

3. The problem I’m having:

I’m simply trying to run caddy for the first time in my linux terminal.

4. Error messages and/or full log output:

panic: qtls.ConnectionState not compatible with tls.ConnectionState

goroutine 1 [running]:
github.com/lucas-clemente/quic-go/internal/handshake.init.1()
        /home/myuser/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.13.1/internal/handshake/unsafe.go:17 +0x12e

5. What I already tried:

I tried running caddy by typing ‘caddy’

6. Links to relevant resources:

Tutorial: How To Host a Website with Caddy on Ubuntu 18.04 | DigitalOcean
Found this while googling that error: support Go 1.15 ¡ Issue #2614 ¡ lucas-clemente/quic-go ¡ GitHub

You should follow the official instructions instead (use xcaddy):

Thank you. I started following that.
The requirements state this:
Requirements:

Go installed (see above)
Make sure xcaddy is in your PATH

And “xcaddy” is linked, but not to instructions of how to do that. How do I add xcaddy to my PATH in unbuntu?

That’s more of a “how do I use my computer” kind of question, honestly. There are countless guides on the internet that can explain that for you.

Typically you’d move the binary to /usr/local/bin which is one of the various directories that are in your PATH by default:

1 Like

Thank you for your help. I understand PATH now. I had used it quite a bit in Windows, but am a complete newb in linux. So I used curl to download https://github.com/caddyserver/xcaddy/releases/download/v0.1.6/xcaddy_0.1.6_linux_amd64.tar.gz and moved it to /usr/local/bin. I tried the xcaddy command and it didn’t work. Then I opened up ~/.profile and added this line to the end export PATH=$PATH:/usr/local/bin. I tried the xcaddy command and it still didn’t work. I also rebooted the linux server after each step.
What am I missing?

You need to give the xcaddy binary executable permissions. You can do that with chmod +x <file>

https://www.guru99.com/file-permissions.html

1 Like

This topic was automatically closed after 30 days. New replies are no longer allowed.