src/Composer/Command/DiagnoseCommand.php
private function checkHttpsProxyFullUriRequestParam()
    {
        $result = $this->checkConnectivity();
        if ($result !== true) {
            return $result;
        }

        if (!extension_loaded('openssl')) {
            return 'You need the openssl extension installed for this check';
        }

        $url = 'https://api.github.com/repos/Seldaek/jsonlint/zipball/1.0.0';
        try {
            $this->rfs->getContents('github.com', $url, false);
        } catch (TransportException $e) {
            try {
                $this->rfs->getContents('github.com', $url, false, array('http' => array('request_fulluri' => false)));
            } catch (TransportException $e) {
                return 'Unable to assess the situation, maybe github is down ('.$e->getMessage().')';
            }

            return 'It seems there is a problem with your proxy server, try setting the "HTTPS_PROXY_REQUEST_FULLURI" environment variable to "false"';
        }

        return true;
    }
private function checkHttpsProxyFullUriRequestParam()
    {
        $result = $this->checkConnectivity();
        if ($result !== true) {
            return $result;
        }

        if (!extension_loaded('openssl')) {
            return 'You need the openssl extension installed for this check';
        }

        $url = 'https://api.github.com/repos/Seldaek/jsonlint/zipball/1.0.0';
        try {
            $this->rfs->getContents('github.com', $url, false);
        } catch (TransportException $e) {
            try {
                $this->rfs->getContents('github.com', $url, false, array('http' => array('request_fulluri' => false)));
            } catch (TransportException $e) {
                return 'Unable to assess the situation, maybe github is down ('.$e->getMessage().')';
            }

            return 'It seems there is a problem with your proxy server, try setting the "HTTPS_PROXY_REQUEST_FULLURI" environment variable to "false"';
        }

        return true;
    }
private function checkHttpsProxyFullUriRequestParam ( ) { $ result = $ this -> checkConnectivity ( ) ; if ( $ result !== true ) { return $ result ; } if ( ! extension_loaded ( 'openssl' ) ) { return 'You need the openssl extension installed for this check' ; } $ url = 'https://api.github.com/repos/Seldaek/jsonlint/zipball/1.0.0' ; try { $ this -> rfs -> getContents ( 'github.com' , $ url , false ) ; } catch ( TransportException $ e ) { try { $ this -> rfs -> getContents ( 'github.com' , $ url , false , array ( 'http' => array ( 'request_fulluri' => false ) ) ) ; } catch ( TransportException $ e ) { return 'Unable to assess the situation, maybe github is down (' . $ e -> getMessage ( ) . ')' ; } return 'It seems there is a problem with your proxy server, try setting the "HTTPS_PROXY_REQUEST_FULLURI" environment variable to "false"' ; } return true ; }
Due to various proxy servers configurations, some servers can't handle non-standard HTTP "http_proxy_request_fulluri" parameter,
and will return error 500/501 (as not implemented), see discussion @ https://github.com/composer/composer/pull/1825.
This method will test, if you need to disable this parameter via setting extra environment variable in your system.

@return bool|string
Due to various proxy servers configurations some servers can t handle non - standard HTTP http_proxy_request_fulluri parameter and will return error 500 / 501 ( as not implemented ) see discussion @ https : // github . com / composer / composer / pull / 1825 . This method will test if you need to disable this parameter via setting extra environment variable in your system .