Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

How to use with reverse_proxy? (caching is not working)

Abierto
#121 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
25/100
Tipo de issue
Error
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
go

Línea de trabajo

Comienza con el Caddyfile proporcionado y reproduce solicitudes al matcher .m3u8 mientras observas si la directiva de caché o reverse_proxy las gestiona. Revisa el comportamiento de cache-handler en torno al orden de las directivas, los matchers y las claves de caché; el trabajo estará terminado cuando se identifique la causa de la solicitud al upstream en cada llamada y se documente una configuración verificada o el cambio necesario.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Hi, I'm trying to use Caddy to cache .m3u8 files when reverse proxying to an upstream server. I’m using the cache directive and set up my Caddyfile as follows:

{
    order cache before rewrite
    order cache before reverse_proxy
    cache {
        allowed_http_verbs GET POST
        ttl 60s
        timeout {
            backend 20s
            cache 100ms
        }
    }
}

:9991 {
    route /ch1/* {
        @m3u8_files {
            path_regexp m3u8 ^/.*\.m3u8(\?.*)?$
        }

        handle @m3u8_files {
            header +X-Custom-Header "Some Value"
        }

        cache @m3u8_files {
            ttl 60s
        }

        uri strip_prefix /ch1
        rewrite * /ChannelOne{uri}
        reverse_proxy https://upstream-host.me {
            header_up Host {http.reverse_proxy.upstream.hostport}
        }
    }
}

What’s working:

  • The X-Custom-Header is successfully added to the .m3u8 responses.
  • The reverse proxy is functioning and serving content.

What’s not working:

  • The caching doesn't seem to take effect at all. I expected .m3u8 files to be cached for 60 seconds, but every request still hits the upstream server.

Any help or guidance would be appreciated. Thanks in advance!

Lenguaje dominante
Go
Estrellas
396
Forks
29
Merge medio
32 min
PR fusionados (30 d)
1

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de caddyserver/cache-handler

Todos los issues de caddyserver/cache-handler

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.