---
title: bereq.http.{NAME}
summary: null
url: >-
  https://www.fastly.com/documentation/reference/vcl/variables/backend-request/bereq-http
---

**Type:** STRING  
**Access:** can be read, set and unset

**Available in:** pass, miss, fetch

Request headers sent to the backend. 

Before Fastly invokes `vcl_miss` or `vcl_pass`, we copy the contents of `req.http.*` into a new set of headers called `bereq.http`.
This header list can then be modified without affecting the original request received from the client.

The `bereq.http.*` headers are also available in `vcl_fetch`, after the fetch to the backend has been made, but modifying their values in `vcl_fetch` has no effect.

The same header name may appear multiple times in an HTTP message, with different values for each instance.
`bereq.http` will only give the value of the first instance of a header.
You can use `std.collect` to combine these multiple instances into one.
