22

是否可以根据主机名在 .htaccess 文件中设置不同的 SetEnv 变量?

例如,我需要我的.htaccess文件具有以下值:

SetEnv PYRO_ENV production

在生产盒上,以及...

SetEnv PYRO_ENV stage

在分期箱上。该.htaccess文件受版本控制,这就是我正在寻找有条件解决方案的原因。

4

2 回答 2

52

对于条件设置,有SetEnvIf

SetEnvIf Host ^stage\.example\.com$ PYRO_ENV=stage
SetEnvIf Host ^(www\.)?example\.com$ PYRO_ENV=production
于 2012-10-16T00:38:39.760 回答
25

您可以使用 mod_rewrite:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^stage\.domain\.com$
RewriteRule (.*) $1 [E=PYRO_ENV:stage]

RewriteCond %{HTTP_HOST} ^www\.domain\.com$
RewriteRule (.*) $1 [E=PYRO_ENV:production]
于 2012-05-23T21:07:53.920 回答