diff -r 5a6b6e770365 -r 68c69c656a2c web/lib/Zend/Controller/Request/Http.php --- a/web/lib/Zend/Controller/Request/Http.php Thu May 07 15:10:09 2015 +0200 +++ b/web/lib/Zend/Controller/Request/Http.php Thu May 07 15:16:02 2015 +0200 @@ -14,9 +14,9 @@ * * @category Zend * @package Zend_Controller - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License - * @version $Id: Http.php 24842 2012-05-31 18:31:28Z rob $ + * @version $Id$ */ /** @see Zend_Controller_Request_Abstract */ @@ -986,8 +986,18 @@ } // Try to get it from the $_SERVER array first - $temp = 'HTTP_' . strtoupper(str_replace('-', '_', $header)); - if (isset($_SERVER[$temp])) { + $temp = strtoupper(str_replace('-', '_', $header)); + if (isset($_SERVER['HTTP_' . $temp])) { + return $_SERVER['HTTP_' . $temp]; + } + + /* + * Try to get it from the $_SERVER array on POST request or CGI environment + * @see https://www.ietf.org/rfc/rfc3875 (4.1.2. and 4.1.3.) + */ + if (isset($_SERVER[$temp]) + && in_array($temp, array('CONTENT_TYPE', 'CONTENT_LENGTH')) + ) { return $_SERVER[$temp]; }