William Oetting
William Oetting

Reputation: 71

RequestHeader not getting set on RewriteRule in htaccess

The following RewriteRule in my htaccess file isn't getting the request header set.

Header set Access-Control-Allow-Origin "*"
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} ^(.*)&someUser=(.*)$
RewriteRule ^(.*)SDM$ http://some.domain.com/SDM/Publish.aspx [E=SOME:%2,R,L]
RequestHeader set Some-User: "%{SOME}e"

I don't think the SOME environment variable has anything to do with it because I tried a generic header value as well and it wasn't set either. I did make sure that mod-headers is installed. I am looking for the header in my chrome developer tools. Is it possible that it won't show up there?

Upvotes: 3

Views: 3085

Answers (1)

anubhava
anubhava

Reputation: 785471

Env variables won't be set while doing external redirect, you must do internal rewrite for setting env variables like this:

Header set Access-Control-Allow-Origin "*"
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} (^|&)someUser=([^&]+) [NC]
RewriteRule ^(.*)SDM$ /SDM/Publish.aspx [E=SOME:%2,L]

RequestHeader set Some-User "%{SOME}e"

Upvotes: 2

Related Questions