1
0
Fork 0
mirror of https://github.com/miniflux/v2.git synced 2025-09-15 18:57:04 +00:00

feat(mediaProxy): implement referer spoofing for restricted media resources

This commit is contained in:
AiraNadih 2024-10-30 01:08:31 +08:00 committed by Frédéric Guillot
parent 051bdecabd
commit 469f23968e
2 changed files with 46 additions and 0 deletions

View file

@ -19,6 +19,7 @@ import (
"miniflux.app/v2/internal/http/request"
"miniflux.app/v2/internal/http/response"
"miniflux.app/v2/internal/http/response/html"
"miniflux.app/v2/internal/reader/rewrite"
)
func (h *handler) mediaProxy(w http.ResponseWriter, r *http.Request) {
@ -90,6 +91,10 @@ func (h *handler) mediaProxy(w http.ResponseWriter, r *http.Request) {
req.Header.Set("Connection", "close")
if referer := rewrite.GetRefererForURL(mediaURL); referer != "" {
req.Header.Set("Referer", referer)
}
forwardedRequestHeader := []string{"Range", "Accept", "Accept-Encoding", "User-Agent"}
for _, requestHeaderName := range forwardedRequestHeader {
if r.Header.Get(requestHeaderName) != "" {