nachtigall
nachtigall

Reputation: 2497

What's the opposite of "Header append Vary User-Agent", how to remove the "User-Agent" string from "Vary"?

I know that I can add the User-Agent to the Vary http header with this line in my .htacess:

Header append Vary User-Agent

But how can I remove the User-Agent from the Vary header if it is already set?

According to the mod_headers doc there is an append option, but no equivalent "remove" option.

Upvotes: 1

Views: 3200

Answers (2)

John R Perry
John R Perry

Reputation: 4202

Though this is not as generic as being able to remove the specific User-Agent keyword, it gets the job done:

Header set Vary "Accept-Encoding"

This will overwrite your existing header so that the vary header will only have Accept-Encoding

Upvotes: 4

covener
covener

Reputation: 17896

Simple answer below, but you need some shenanigans to avoid sending an empty Vary: header (try to avoid it out of paranoia)

Header edit Vary (.*)User-Agent(.*) $1$2
# Remove leading or trailing ',' without making things complex above
Header edit Vary ^,?(.*),?$ $1
# 2.4-only: remove empty Vary header
Header unset Vary "expr=resp('Vary') =~ /^$/"

x-never-match can be any unlikely-to-ever-be-used header name.

Upvotes: 5

Related Questions