anchor.diff:        final headerValue = targetResponse.headers[key];
   
         if (responseHeadersNeverPass.contains(headerName) ||
  -          responseConnectionExclude.contains(headerName.toLowerCase()) ||
  -          (responseBlockHeaders.contains(headerName)) ||
  -          headerName == 'via') {
  +          responseConnectionExclude.contains(headerName) ||
  +          responseBlockHeaders.contains(headerName)) {
           // Do not pass back header
           _logProxyResponse.finest('[${req.id}] - $headerName=$headerValue');
         } else {
  
positive.code:     final resp = ResponseStream(contentType)
        ..status = targetResponse.statusCode
        ..headerRemoveAll();
  
      // Above removes all default headers, since some/all of them might be
      // present in the proxy response. Only the ones from the proxy response will
  
negative.code:       }
      }
  
      // Add explicit connection close header to disable _persistent connections_
      // in HTTP/1.1 (where the absence of the header means persistence desired).
      // Having an explicit connection close header also disables it with
      // legacy (but commonly implemented) HTTP/1.0+ _keep-alive connections_
      // (where the absence of the header means no persistence).
  
      passHeaders['connection'] = 'close';
      _logProxyRequest.finest('[${req.id}] + connection=close');
  
      // Headers from incoming request to outgoing request
  
      req.headers.forEach((key, values) {
        final headerName = key.toLowerCase();
  
        if (requestHeadersNeverPass.contains(headerName) ||
            requestConnectionExclude.contains(headerName) ||
            requestBlockHeaders.contains(headerName) ||
            headerName == 'via') {
          // Do not pass through header
          // Note: any "Via" headers are skipped here, but their values will all
          // be put back immediately after this loop (see below).
          _logProxyRequest.finest('[${req.id}] - $headerName=${values.first}');
        } else {
          // Pass through header
  
          // The _http.get_ function does not support multiple headers with the
          // same name, so multiple values are combined together with commas as
          // permitted by
          // https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2
          final singleValue = values.join(', ');
  
          // Except Set-Cookies is a special case where commas might not
          // work: https://tools.ietf.org/html/rfc7230#section-3.2.2
  
          _logProxyRequest.finest('[${req.id}]   $headerName=$singleValue');
          passHeaders[headerName] = singleValue;
        }
      });
  
      // A "Via" header is _always_ added to forwarded requests.
      // It is mandatory according to
      // [RFC 7230](https://tools.ietf.org/html/rfc7230#section-5.7.1).
      //
      // Again, since _http.get_ does not support multiple headers, if there are
      // any existing Via header(s), their values are concatenated together
      // with the new value and separated by a comma.
  
      final _newVia = req.headers['via'] != null
          ? '${req.headers['via'].where((s) => s.isNotEmpty).join(', ')}, $_via'
  