[wp-trac] [WordPress Trac] #22913: Plugin Updater fails behind HTTP Proxy
WordPress Trac
noreply at wordpress.org
Wed Dec 19 13:50:03 UTC 2012
#22913: Plugin Updater fails behind HTTP Proxy
-------------------------------+------------------------------
Reporter: samthorne | Owner:
Type: defect (bug) | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Upgrade/Install | Version: 3.5
Severity: normal | Resolution:
Keywords: reporter-feedback |
-------------------------------+------------------------------
Comment (by samthorne):
I'm trying to determine which kind of proxy software we use, but probably
wont find out until after Christmas.
The proxy has a content filter which I believe is keyword and
blacklist/whitelist based, though I'm not certain.
It doesn't automatically block zip archives, I can download the hotfix.zip
myself and it unzips with no problems.
The proxy server is an authenticated proxy defined in wp-config using:
{{{
define('WP_PROXY_HOST', '...');
define('WP_PROXY_PORT', '10080');
define('WP_PROXY_USERNAME', '...');
define('WP_PROXY_PASSWORD', '...');
define('WP_PROXY_BYPASS_HOSTS', 'localhost');
}}}
HTTP test returns:
{{{
Array
(
[headers] => Array
(
[server] => nginx
[date] => Wed, 19 Dec 2012 10:59:33 GMT
[content-type] => application/octet-stream
[pragma] => no-cache
[cache-control] => private
[content-description] => File Transfer
[content-disposition] => attachment; filename=hotfix.1.0.zip
[x-nc] => MISS luv 139
[connection] => close
[content-encoding] => deflate
[age] => 0
)
[body] => 11507: 504b03040a0000000000
[response] => Array
(
[code] => 200
[message] => OK
)
)
}}}
I performed the same test with the hotfix file downloaded through my
browser not via the proxy and then hosted on localhost:
{{{
Array
(
[headers] => Array
(
[date] => Wed, 19 Dec 2012 11:39:28 GMT
[server] => Apache/2.2.22 (Unix) DAV/2 PHP/5.3.15 with
Suhosin-Patch mod_ssl/2.2.22 OpenSSL/0.9.8r
[last-modified] => Wed, 19 Dec 2012 11:37:33 GMT
[etag] => "bad04d-2cf3-4d1330a49f940"
[accept-ranges] => bytes
[content-length] => 11507
[connection] => close
[content-type] => application/zip
)
[body] => 11507: 504b03040a0000000000
[response] => Array
(
[code] => 200
[message] => OK
)
)
}}}
The only difference is the content-type which are both valid anyway.
I then tried adding a copy() call in download_url() in file.php,
duplicating the downloaded zip into tmp before anything else happens to
it.
This file is corrupted, I have attached it here.
I'm not sure what this means though, how can the proxy corrupt it when WP
downloads it but not when the browser downloads it?
--
Ticket URL: <http://core.trac.wordpress.org/ticket/22913#comment:2>
WordPress Trac <http://core.trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list