3

我的 htaccess 文件中的以下 RewriteRule 未设置请求标头。

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"

我不认为 SOME 环境变量与它有任何关系,因为我也尝试了一个通用的标头值并且它也没有设置。我确实确保安装了 mod-headers。我正在我的 chrome 开发人员工具中寻找标题。它有可能不会出现在那里吗?

4

1 回答 1

2

执行外部重定向时不会设置环境变量,您必须进行内部重写以设置环境变量,如下所示:

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"
于 2015-05-02T05:13:10.493 回答