Швидкий огляд документації :
Директива SetEnvIf визначає змінні середовища на основі атрибутів запиту. Атрибут, зазначений у першому аргументі, може бути одним із трьох речей:
Поле заголовка HTTP-запиту (для отримання додаткової інформації див. RFC2616); наприклад: Хост, Користувач-агент, Референт та Мова прийняття. Для визначення набору заголовків запитів може використовуватися регулярний вираз.
Отже, звичайно можна зробити змінну середовища умовною для Hostзаголовка. Схоже, ви намагаєтеся використовувати Refererабо Remote_Hostзаголовки, або жоден з них не є саме тим, що ви хочете (хоча теоретично в більшості випадків Refererмає містити значення Hostзаголовка). Remote_Hostбуде іменем хоста клієнта, який робить запит, який зовсім не є тим, що ви хочете (а в більшості конфігурацій просто не буде доступним, оскільки типово вимкнення DNS-запитів з міркувань продуктивності).
Спробуйте щось подібне:
SetEnvIf Host "www-dev\.example\.com" ENV=DEV
SetEnvIf Host "www-production\.example\.com" ENV=PRD
... а потім використовуйте $ _SERVER ['ENV'] для створення деяких логічних гілок
Але зауважте також, що ви можете просто посилатись на значення Hostзаголовка безпосередньо в PHP, не проходячи цей шикарій; $_SERVER['HTTP_HOST']матиме саме те, що ви хочете.