Переменная окружения USERNAME

ASN

Guest
Переменная окружения USERNAME

Имеется Apache 1.3 и PHP 4.3 на Win2000. Каким образом получить значение переменной $ _SERVER["USERNAME"]? Как и какие настройки нужно сделать?
 

Bully

Новичок
А разве есть такая предопределенная переменная? Видимо, имеется ввиду $_SERVER['PHP_AUTH_USER']
 

Bully

Новичок
Покажите мне раздел мануала, где про это сказано. $_SERVER['PHP_AUTH_USER'] работает и под Apache и под IIS (как это и должно быть в независимом от платформы языке) - сам проверял.
 

trustno1

Новичок
Bully, а кто сказал, что различные веб-серверы не могут добавлять в своё окружение различные переменные? MS взяли и добавили USERNAME, с чего это тоже самое должно быть в Апаче?
 

Bully

Новичок
Bully, а кто сказал, что различные веб-серверы не могут добавлять в своё окружение различные переменные? MS взяли и добавили USERNAME, с чего это тоже самое должно быть в Апаче?
Допустим, это так. Только зачем использовать элементы, зависящие от веб-сервера?

Уважаемый ASN, зачем вам нужен этот самый USERNAME? Может быть, его можно заменить чем-нибудь универсальным?

-~{}~ 27.06.05 07:13:

Сейчас нашел: есть переменная $_ENV["USERNAME"]. В Apache она видна (отображается в выводе phpinfo), а в IIS - нет.
 

ASN

Guest
Сейчас нашел: есть переменная $_ENV["USERNAME"]. В Apache она видна (отображается в выводе phpinfo),
В редакторе (c встроенным php и Apache) phpinfo() показывает, что переменные $_ENV["USERNAME"], $_ENV["USERNAME"], $_ENV["USERNAME"], $_http_SERVER_VARS["USERNAME"] имеют одно значение: имя системной учетной записи пользователя, сделавшего запрос на web сервер. Оно то мне и нужно.
Используя внешний Apache phpinfo() ни одна из переменных не видна!?;)
Откуда брать значение мне все равно.
Уважаемый Bully, поделись каким образом у тебя phpinfo() выводит $_ENV["USERNAME"], а у меня - нет?
 

chulim

Новичок
ASN
могу предположить, что во внешнем Apache $_ENV["USERNAME"] будет типа root или вроде того :))
 

slach

Новичок
ASN - ничего подобного USERNAME это не имя системной учетной записи пользователя который сделал запрос к веб серверу

насколько я помню, это имя системной учетной записи из под которой запущен веб-сервер

поправьте меня ссылкой на документацию, если я ошибаюсь
 

Bully

Новичок
насколько я помню, это имя системной учетной записи из под которой запущен веб-сервер

поправьте меня ссылкой на документацию, если я ошибаюсь
Похоже, что так и есть:
Environment variables: $_ENV

These variables are imported into PHP's global namespace from the environment under which the PHP parser is running (эти переменные импортируются в глобальное пространство имен PHP из приложения, под которым запущен парсер PHP).

У меня в IIS: $_ENV["USERPROFILE"] = C:\Documents and Settings\Default User
в Apache: $_ENV["USERNAME"] = MyProfileName
$_ENV["USERPROFILE"] = C:\\Documents and Settings\\myprofilename

... с учетом того, из под кого работают у меня IIS и Apache, все логично. Вообще говоря, название профиля пользователя, заходящего на сайт, веб-серверу не передается (ИМХО).

-~{}~ 28.06.05 05:33:

Сейчас посмотрел на UNIX-сервере - там вообще нет USERNAME и USERPROFILE.
 
Сверху