Page MenuHomePhabricator

D21167.id50398.diff
No OneTemporary

D21167.id50398.diff

diff --git a/src/aphront/response/AphrontHTTPProxyResponse.php b/src/aphront/response/AphrontHTTPProxyResponse.php
--- a/src/aphront/response/AphrontHTTPProxyResponse.php
+++ b/src/aphront/response/AphrontHTTPProxyResponse.php
@@ -61,11 +61,17 @@
// Strip "Transfer-Encoding" headers. Particularly, the server we proxied
// may have chunked the response, but cURL will already have un-chunked it.
// If we emit the header and unchunked data, the response becomes invalid.
+
+ // See T13517. Strip "Content-Encoding" and "Content-Length" headers, since
+ // they may reflect compressed content.
+
foreach ($headers as $key => $header) {
list($header_head, $header_body) = $header;
$header_head = phutil_utf8_strtolower($header_head);
switch ($header_head) {
case 'transfer-encoding':
+ case 'content-encoding':
+ case 'content-length':
unset($headers[$key]);
break;
}

File Metadata

Mime Type
text/plain
Expires
Tue, Feb 11, 6:08 AM (10 h, 43 m)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7116451
Default Alt Text
D21167.id50398.diff (967 B)

Event Timeline