Re: getting authentication information from apache

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ryan wrote:
> Richard et al.,
> 
> You are right, the variable was not being provided for the apache
> server. Essentially I found the answer here....
> 
> http://httpd.apache.org/docs/1.3/misc/FAQ-F.html#remote-user-var
> 
> The document has to be protected in order for apache create the
> REMOTE_USER variable. This was an apache subtlety I didn't know about.
> As soon as I protected it with an .htaccess file, it worked fine and
> the user showed up in this variable.

there is possibly another way by using the Rewrite engine to explicitly
set ENV variables based on apache interal, something like this:

RewriteEngine   On
RewriteRule     ^.*$            -       [C,E=VHOSTS_ROOT:/var/www/vhosts]


the above rule ends up providing $_SERVER['VHOSTS_ROOT'] in your script,
a little contrived but you can also do stuff like:

RewriteRule     ^.*$            -       [C,E=THING:%{REMOTE_USER}]

the 'C' make the rule chained so that you can include it alongside existing
rules transparently.


> 
> $_SERVER['REMOTE_USER']
> 
> Thanks,
> Ryan
> 
> 
> On 2/27/07, Richard Lynch <ceo@xxxxxxxxx> wrote:
>> Use <?php phpinfo();?> and see what *IS* there.
>>
>> If what you want isn't there, then the web server didn't provide it.
>>
>> If the web server didn't provide it, PHP can't be blamed for not
>> passing it on to you, which is *ALL* PHP does here.
>>
>> So what you have is a web-server configuration issue in that case.
>>
>>
>> On Mon, February 26, 2007 11:18 am, Ryan wrote:
>> > Tried that ($PHP_AUTH_USER) and it is also empty.
>> >
>> > On 2/24/07, dave <dave@xxxxxxxx> wrote:
> try echo $PHP_AUTH_USER;
> 
> Ryan wrote:
>> Richard,
> 
>> I looked at phpinfo() as you said, same thing...
> 
>> _SERVER["REMOTE_USER"]    no value
> 
>> You may be right, this may not be available, but I don't want to
> keep
>> throwing a login screen in front of users for no apparent reason.
> 
>> Thanks,
>> Ryan
> 
> 
> 
> 
>> On 2/23/07, Richard Lynch <ceo@xxxxxxxxx> wrote:
>>> On Wed, February 21, 2007 1:01 pm, Ryan wrote:
>>> > I'm new to php and I have am running php on apache. I already
> have
>>> > ldap
>>> > authentication set up in apache would rather not create a
> separate
>>> > system
>>> > for php. What would be ideal would be to get the current
> authenticated
>>> > user
>>> > from the apache environment. At this point I'm grabbing at
> straws, but
>>> > so
>>> > far I've tried....
>>> >
>>> > $ret = apache_getenv("LDAP_USER");
>>> > echo $ret;
>>> > echo $_SERVER['REMOTE_USER'];
>>> > echo $_SERVER['PHP_AUTH_DIGEST'];
>>> > $ret = apache_getenv('PHP_AUTH_DIGEST');
>>> >
>>> > None of these work. Has anyone done this??
>>>
>>> If the answer you are seeking isn't available in:
>>> <?php phpinfo();?>
>>> run on the page where you are trying to do this, then you
> probably
>>> can't get the answer you want.
>>>
>>> Running http://php.net/ldap to re-connect and re-authenticate
> will
>>> probably be fairly cheap, since LDAP is supposed to be pretty
> dang
>>> fast in the first place, and whatever caching is going on for the
> LDAP
>>> or OS calls behind LDAP virtually guarantees that the data you
> want is
>>> in RAM.
>>>
>>> --
>>> Some people have a "gift" link here.
>>> Know what I want?
>>> I want you to buy a CD from some starving artist.
>>> http://cdbaby.com/browse/from/lynch
>>> Yeah, I get a buck. So?
>>>
>>>
> 
>> >>
>> >
>> > --
>> > PHP General Mailing List (http://www.php.net/)
>> > To unsubscribe, visit: http://www.php.net/unsub.php
>> >
>> >
>>
>>
>> -- 
>> Some people have a "gift" link here.
>> Know what I want?
>> I want you to buy a CD from some starving artist.
>> http://cdbaby.com/browse/from/lynch
>> Yeah, I get a buck. So?
>>
>>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux