Добрый день. Такая проблема: в Apache настроено AuthType Basic. После авторизации пользователя нужно передать его логин скрипту на php. Придумал только один вариант решения - отпарсить логфайл. Может есть более красивые решения?
>Добрый день. Такая проблема: в Apache настроено AuthType Basic. После авторизации пользователя
>нужно передать его логин скрипту на php. Придумал только один вариант
>решения - отпарсить логфайл. Может есть более красивые решения?А _ENV["USER"] не работает?
>>Добрый день. Такая проблема: в Apache настроено AuthType Basic. После авторизации пользователя
>>нужно передать его логин скрипту на php. Придумал только один вариант
>>решения - отпарсить логфайл. Может есть более красивые решения?
>
>А _ENV["USER"] не работает?Вот еще можно попробовать.
_ENV["LOGNAME"]
А еще можно авторизацию делать посредством PHP, например так:
if (($PHP_AUTH_USER!="username")||($PHP_AUTH_PW!="password"))
{
Header("HTTP/1.0 401 Auth Required");
Header("WWW-authenticate: basic realm=\"Private Area.\"");
echo "<html><center>Knock, knock, Neo...</center></html>";
exit;
}
>>>Добрый день. Такая проблема: в Apache настроено AuthType Basic. После авторизации пользователя
>>>нужно передать его логин скрипту на php. Придумал только один вариант
>>>решения - отпарсить логфайл. Может есть более красивые решения?
>>
>>А _ENV["USER"] не работает?
>
>Вот еще можно попробовать.
>
>_ENV["LOGNAME"]
>
>А еще можно авторизацию делать посредством PHP, например так:
>
>if (($PHP_AUTH_USER!="username")||($PHP_AUTH_PW!="password"))
>{
>Header("HTTP/1.0 401 Auth Required");
>Header("WWW-authenticate: basic realm=\"Private Area.\"");
>echo "<html><center>Knock, knock, Neo...</center></html>";
>exit;
>}
Насколько я понял, предлагается получать данные авторизации через переменные окружения. Они дествительно называются именно так?
perl:
переменные $ENV{'LOGNAME'},$ENV{'USER'} ничего не содержат;
php:
$PHP_AUTH_USER
$PHP_AUTH_PW - тоже пустые.Вопрос: они действительно существуют? или я что-то не понял?
>>>>Добрый день. Такая проблема: в Apache настроено AuthType Basic. После$login_field = $ENV{REMOTE_USER}
>$login_field = $ENV{REMOTE_USER}
Большое спасибо. почти работает:
перл: $ENV{'REMOTE_USER'} - работает;
пхп: echo $_SERVER['REMOTE_USER']; - не работает, хотя другие переменные окружения отображаются нормально.
Всем спасибо - заработало
>Всем спасибо - заработалоНу вот видишь. А ты хотел через китай...
>>Всем спасибо - заработало
>
>Ну вот видишь. А ты хотел через китай...вот интересно в любом апаче в cgi-bin лежит printenv - для кого кладут ?
>>>Всем спасибо - заработало
>>
>>Ну вот видишь. А ты хотел через китай...
>
> вот интересно в любом апаче в cgi-bin лежит printenv - для
>кого кладут ?Наверно просто так. Для теста перла.
У меня н лежит. :) Я его удалил.
>Добрый день. Такая проблема: в Apache настроено AuthType Basic. После авторизации пользователя
>нужно передать его логин скрипту на php. Придумал только один вариант
>решения - отпарсить логфайл. Может есть более красивые решения?А у меня назрел другой вопрос.
Вот ходят юзеры через сквид с доменной прозрачной авторизацией.
Вот как бы логин юзера получить в PHP?
Тут видимо придется парсить лог сквида... Но это ж такой геморрой, тем более лог довольно весомый...
>пхп: echo $_SERVER['REMOTE_USER']; - не работает, хотя другие переменные окружения отображаются нормально.Уменя такая же проблемма, кто-нибудь знает в чем дело? Спасибо.