web-dev-qa-db-ja.com

.htaccessの条件付きSetEnv?

ホスト名に応じて異なる方法で.htaccessファイルにSetEnv変数を設定することは可能ですか?

たとえば、.htaccessファイルに次の値を設定する必要があります。

SetEnv PYRO_ENV production

プロダクションボックスで、そして...

SetEnv PYRO_ENV stage

ステージングボックスについて。 .htaccessファイルはバージョン管理されているため、条件付きの解決策を探しています。

21
Highway of Life

条件付き設定には SetEnvIf :があります。

SetEnvIf Host ^stage\.example\.com$ PYRO_ENV=stage
SetEnvIf Host ^(www\.)?example\.com$ PYRO_ENV=production
49

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]
25
lanzz