Need help with HTTP/2 reverse proxy in Caddy 2 (w/ V2Ray)

1. Caddy version (caddy version):

v2.1.1 h1:X9k1+ehZPYYrSqBvf/ocUgdLSRIuiNiMo7CvyGUQKeA=

2. How I run Caddy:

a. System environment:

Ubuntu 20.04.1, systemd 245 (245.4-4ubuntu3.2)

b. Command:

systemctl start caddy.service

c. Service/unit/compose file:

caddy.service

[Unit]
Description=Caddy
Documentation=https://caddyserver.com/docs/
After=network.target

[Service]
User=caddy
Group=caddy
ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile
TimeoutStopSec=5s
LimitNOFILE=1048576
LimitNPROC=512
PrivateTmp=true
ProtectSystem=full
AmbientCapabilities=CAP_NET_BIND_SERVICE

[Install]
WantedBy=multi-user.target

d. My complete Caddyfile or JSON config:

http://gia.icarusradio.top {
        redir https://gia.icarusradio.top{uri}
}

https://gia.icarusradio.top {
        root * /srv
        try_files {path} {path}.html
        file_server
        log {
                output file /var/log/caddy.log {
                        roll_size 10MiB
                        roll_keep 2
                        roll_keep_for 48h
                }
        }
        tls /etc/caddy/fullchain.pem /etc/caddy/privkey.pem
        reverse_proxy /eTrelDrtKV https://localhost:17104 {
                header_up X-Real-IP {remote}
                header_up X-Forwarded-Port {http.request.port}
                header_up X-Forwarded-Proto "https"
                transport http {
                        tls_insecure_skip_verify
                }
        }
}

3. The problem I’m having:

I am trying to follow the guide which uses the HTTP/2 reverse proxy and send data to V2Ray. The original guide uses Caddy1 and it works fine. I tried to switch to Caddy 2 by translating the old Caddyfile line by line, but it failed. The original Caddyfile for Caddy 1

http://gia.icarusradio.top {
    redir https://gia.icarusradio.top{url}
}

https://gia.icarusradio.top {
    log stdout
    errors stderr
    tls /etc/caddy/fullchain.pem /etc/caddy/privkey.pem
    proxy /eTrelDrtKV https://localhost:17104 {
        insecure_skip_verify
        header_upstream Host {host}
        header_upstream X-Real-IP {remote}
        header_upstream X-Forwarded-For {remote}
        header_upstream X-Forwarded-Port {server_port}
        header_upstream X-Forwarded-Proto "https"
}

When the client request from the Caddy server, there is no log output from either Caddy or V2Ray on the server-side. I can only see the error message when I turn off the client.

4. Error messages and/or full log output:

Log for Caddy server

{"level":"info","ts":1599623097.687697,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":112.396544923,"size":0,"status":200,"resp_headers":{"Date":["Wed, 09 Sep 2020 03:43:05 GMT"],"Server":["Caddy"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.7004435,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":39.447687535,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:18 GMT"]}}
{"level":"info","ts":1599623097.702566,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":119.309374287,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:42:58 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.7044134,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":93.307920047,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:24 GMT"]}}
{"level":"info","ts":1599623097.70641,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":44.113891828,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Date":["Wed, 09 Sep 2020 03:44:13 GMT"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.7076266,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":29.727838188,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:27 GMT"]}}
{"level":"info","ts":1599623097.7082767,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":26.046216679,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:31 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.7084517,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":122.604553392,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:42:55 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.70859,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":52.161247396,"size":0,"status":200,"resp_headers":{"Date":["Wed, 09 Sep 2020 03:44:05 GMT"],"Cache-Control":["no-store"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.710728,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":29.660638322,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:28 GMT"]}}
{"level":"info","ts":1599623097.714442,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":111.814210243,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:05 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.7191331,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":110.686939023,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:07 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.7203472,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":106.679784053,"size":0,"status":200,"resp_headers":{"Date":["Wed, 09 Sep 2020 03:43:11 GMT"],"Server":["Caddy"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.7208517,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":33.782188802,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:23 GMT"]}}
{"level":"info","ts":1599623097.7218022,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":29.685990175,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:28 GMT"]}}
{"level":"info","ts":1599623097.7226908,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":103.763699354,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:13 GMT"]}}
{"level":"info","ts":1599623097.723036,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":3.803534134,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:53 GMT"]}}
{"level":"info","ts":1599623097.7236505,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":82.273883621,"size":0,"status":200,"resp_headers":{"Date":["Wed, 09 Sep 2020 03:43:35 GMT"],"Server":["Caddy"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.724497,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":78.239975917,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:39 GMT"]}}
{"level":"info","ts":1599623097.7249203,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":78.180751149,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:39 GMT"]}}
{"level":"info","ts":1599623097.7254562,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":29.658631464,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:44:28 GMT"]}}
{"level":"info","ts":1599623097.7259026,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":120.405809575,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:42:57 GMT"],"Server":["Caddy"]}}
{"level":"info","ts":1599623097.726433,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":112.097486168,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Date":["Wed, 09 Sep 2020 03:43:05 GMT"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.7269404,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":85.302069251,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:32 GMT"]}}
{"level":"info","ts":1599623097.7282467,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":48.16620844,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Server":["Caddy"],"Date":["Wed, 09 Sep 2020 03:44:09 GMT"]}}
{"level":"info","ts":1599623097.7288587,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":29.948581173,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Date":["Wed, 09 Sep 2020 03:44:27 GMT"],"Cache-Control":["no-store"]}}
{"level":"info","ts":1599623097.7296052,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"Accept-Encoding":["identity"],"User-Agent":["Go-http-client/2.0"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":116.447103307,"size":0,"status":200,"resp_headers":{"Server":["Caddy"],"Cache-Control":["no-store"],"Date":["Wed, 09 Sep 2020 03:43:01 GMT"]}}
{"level":"info","ts":1599623097.7308707,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":89.315503531,"size":0,"status":200,"resp_headers":{"Cache-Control":["no-store"],"Server":["Caddy"],"Date":["Wed, 09 Sep 2020 03:43:28 GMT"]}}
{"level":"info","ts":1599623097.73157,"logger":"http.log.access.log0","msg":"handled request","request":{"method":"PUT","uri":"/eTrelDrtKV","proto":"HTTP/2.0","remote_addr":"119.78.254.4:16672","host":"gia.icarusradio.top","headers":{"User-Agent":["Go-http-client/2.0"],"Accept-Encoding":["identity"]},"tls":{"resumed":false,"version":772,"ciphersuite":4865,"proto":"h2","proto_mutual":true,"server_name":"gia.icarusradio.top"}},"common_log":"119.78.254.4 - - [09/Sep/2020:03:44:57 +0000] \"PUT /eTrelDrtKV HTTP/2.0\" 200 0","duration":74.34974564,"size":0,"status":200,"resp_headers":{"Date":["Wed, 09 Sep 2020 03:43:43 GMT"],"Server":["Caddy"],"Cache-Control":["no-store"]}}

The log for V2Ray server

2020/09/01 05:06:55 127.0.0.1:50466 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50466: read: connection reset by peer
2020/09/01 07:07:24 127.0.0.1:50472 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50472: read: connection reset by peer
2020/09/01 18:23:10 127.0.0.1:50492 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50492: read: connection reset by peer
2020/09/02 03:55:50 127.0.0.1:50512 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50512: read: connection reset by peer
2020/09/02 11:02:34 127.0.0.1:50522 rejected  v2ray.com/core/proxy/vmess/encoding: failed to drain connection DrainSize = 1390 56 15 > v2ray.com/core/proxy/vmess/encoding: invalid user > v2ray.com/core/proxy/vmess: Not Found
2020/09/02 21:12:28 127.0.0.1:50010 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > unexpected EOF
2020/09/02 21:12:28 127.0.0.1:50012 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > unexpected EOF
2020/09/02 21:12:29 127.0.0.1:50014 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > unexpected EOF
2020/09/02 21:12:30 127.0.0.1:50016 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50016: read: connection reset by peer
2020/09/02 21:12:30 127.0.0.1:50018 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > unexpected EOF
2020/09/02 21:12:36 127.0.0.1:50026 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50026: read: connection reset by peer
2020/09/02 21:12:37 127.0.0.1:50028 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50028: read: connection reset by peer
2020/09/03 02:00:43 127.0.0.1:50038 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50038: read: connection reset by peer
2020/09/03 04:13:53 127.0.0.1:50048 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50048: read: connection reset by peer
2020/09/03 10:07:14 127.0.0.1:50082 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50082: read: connection reset by peer
2020/09/04 09:32:23 127.0.0.1:50142 rejected  v2ray.com/core/proxy/vmess/encoding: failed to read request header > read tcp 127.0.0.1:17104->127.0.0.1:50142: i/o timeout

The log for Caddy1 server

2020/09/09 03:27:00 119.78.254.4 - - [09/Sep/2020:03:27:00 +0000] "PUT /eTrelDrtKV HTTP/2.0" 200 293
2020/09/09 03:27:00 119.78.254.4 - - [09/Sep/2020:03:27:00 +0000] "PUT /eTrelDrtKV HTTP/2.0" 200 240
2020/09/09 03:27:11 119.78.254.4 - - [09/Sep/2020:03:27:11 +0000] "PUT /eTrelDrtKV HTTP/2.0" 200 2788

5. What I already tried:

I have tried to remove some header_up options in the Caddyfile, but it still failed.

6. Links to relevant resources:

The reference configuration for Caddy 1.

I don’t know much about v2ray.

Someone posted their example for v2ray on github a while back:

1 Like

v2ray-examples: https://github.com/v2fly/v2ray-examples/tree/master/VLESS-H2C-Caddy2

Thanks, I will try that.