Answers:
在Apache 2.4.7,x86_64,Ubuntu 14.04 LTS中
我发现这可行
RequestHeader setIfEmpty X-Forwarded-For "127.0.0.1"
全天工作。但是,如果尝试使用动态值,
RequestHeader setIfEmpty X-Forwarded-For "%{REMOTE_ADDR}e"
不起作用。我发现您需要mod_rewrite的帮助来收获价值。我的配置现在看起来像这样,并且可以正常工作。
RewriteRule . - [E=noxff:%{REMOTE_ADDR}]
RequestHeader setIfEmpty X-Forwarded-For "%{noxff}e"
我知道它是愚蠢的,但是可以。
怎么样:
RequestHeader set X-My-Header "value" expr="req('X-My-Header')==''"
有关expr =语法的更多信息,请参阅http://httpd.apache.org/docs/current/expr.html。
编辑:在Apache 2.2中,您应该能够做到这一点:
SetEnvIf X-My-Header "" no_my_header
RequestHeader set X-My-Header "value" env=no_my_header