Um proxy pode ser tanto um proxy HTTP quanto um proxy HTTPS se ele suportar o Comando CONECTAR. Se não suportar o comando CONNECT, só poderá fazer HTTP.
Durante a operação normal, o proxy HTTP recebe a solicitação HTTP e é "inteligente o suficiente" para entendê-lo e, portanto, é capaz de otimizar as operações através de métodos como procurar o seu cache para servir a resposta sem ir ao servidor de destino, ou consultar uma lista branca / lista negra para ver se este URL é permitido, etc.
No modo CONNECT, nada disso acontece. O proxy estabelece uma conexão TCP com o servidor de destino e simplesmente encaminha todo o tráfego do cliente para o servidor de destino e todo o tráfego do servidor de destino para o cliente. Isso significa que qualquer protocolo TCP pode funcionar (HTTPS, SSH, FTP - mesmo HTTP simples), como o proxy, em seguida, torna-se apenas um simples tubo mudo.