[HttpFoundation] Basic auth in url is broken when using PHP CGI/FPM
Request#getUser() and Request#getPassword() introduced inaecfd0a891
do not handle the lack of PHP_AUTH_USER and PHP_AUTH_PW in $this->server when using PHP-FPM. Use $this->headers instead. Furthermore, the test of empty password now expects an empty string instead of NULL according toa450d002f2
.
This commit is contained in:
parent
6bd80277f1
commit
7a75adf6f1
@ -949,7 +949,7 @@ class Request
|
|||||||
*/
|
*/
|
||||||
public function getUser()
|
public function getUser()
|
||||||
{
|
{
|
||||||
return $this->server->get('PHP_AUTH_USER');
|
return $this->headers->get('PHP_AUTH_USER');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -959,7 +959,7 @@ class Request
|
|||||||
*/
|
*/
|
||||||
public function getPassword()
|
public function getPassword()
|
||||||
{
|
{
|
||||||
return $this->server->get('PHP_AUTH_PW');
|
return $this->headers->get('PHP_AUTH_PW');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -209,7 +209,7 @@ class RequestTest extends \PHPUnit_Framework_TestCase
|
|||||||
$this->assertEquals(80, $request->getPort());
|
$this->assertEquals(80, $request->getPort());
|
||||||
$this->assertEquals('test.com', $request->getHttpHost());
|
$this->assertEquals('test.com', $request->getHttpHost());
|
||||||
$this->assertEquals('testnopass', $request->getUser());
|
$this->assertEquals('testnopass', $request->getUser());
|
||||||
$this->assertNull($request->getPassword());
|
$this->assertSame('',$request->getPassword());
|
||||||
$this->assertFalse($request->isSecure());
|
$this->assertFalse($request->isSecure());
|
||||||
|
|
||||||
$request = Request::create('http://test.com/?foo');
|
$request = Request::create('http://test.com/?foo');
|
||||||
|
Reference in New Issue
Block a user