Установка значения Php $_SERVER ($_SERVER['something']) с использованием Apache .htaccess

Можно ли с помощью .htaccess или других возможностей Apache установить пользовательское значение сервера в массиве php $_SERVER.

Например

if($_SERVER['is_special']) {
    echo "Yeah for us!";
} else {
    echo "No you fool!";
}

Я понимаю, что задаю много вопросов, на которые нет ответа, поэтому не стесняйтесь так говорить.


person SeanDowney    schedule 04.03.2009    source источник


Ответы (1)


Попробуйте директиву SetEnv:

SetEnv is_special foobar
person Gumbo    schedule 04.03.2009
comment
Вот оно! 'is_special' => строка 'foobar' (длина = 6) - person SeanDowney; 04.03.2009
comment
Обратите внимание, что для этого вам понадобится mod_env. - person Gumbo; 04.03.2009
comment
Старайтесь не загрязнять переменную $_SERVER. Я бы рекомендовал создать какой-то класс реестра, если вы хотите хранить глобальные данные. - person Hawk Kroeger; 05.03.2009
comment
Конечно, вы можете написать переменную $_SERVER, это рекомендуется для указанной конфигурации сервера (например, ключ API и т. д. Обнаружен тип браузера, определение страны и т. д.) - person Thomas Decaux; 04.09.2013
comment
Таким образом, просто с помощью php-кода невозможно создать случайным образом переменную $_SERVER и присвоить ей значение. - person shasi kanth; 11.09.2014
comment
Можно ли установить переменную среды как вложенный массив с помощью SetEnv? - person Sean; 24.10.2016
comment
Если вы похожи на меня и переменная, установленная с помощью SetEnv, не отображается в $_SERVER, проверьте, не используется ли что-то вроде suexec. Если есть, вам может не повезти, и никакие переменные, установленные с помощью SetEnv, не будут переданы. Распространенным обходным решением является использование специального обработчика: stackoverflow.com/a/34724113/3649573. - person AlbinoDrought; 15.03.2019