Witam, chcę przesłać pewne dane za pośrednictwem serwera proxy do jakiegoś zdalnego serwera. Kłopot jest w tym, że jak nasłuchuję ruch w sieci (te rzeczy dzieją się po sieci lokalnej, proxy ma zablokowaną metodę CONNECT), to zawsze wysyła mi właśnie CONNECTA.

  1. <?php
  2. $ch = curl_init();
  3. curl_setopt($ch, CURLOPT_URL, 'https://www.xxx.pl/');
  4. curl_setopt($ch, CURLOPT_HEADER, 1);
  5. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
  6. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  7. curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
  8. curl_setopt($ch, CURLOPT_CUSTOMREQUEST,'POST');
  9. curl_setopt($ch, CURLOPT_POST,1);
  10. curl_setopt($ch, CURLOPT_PROXY, 'IP:PORT');
  11. //curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'user:password'); // brak, bo serwer proxy anonimowy
  12. curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST); // $_POST jest uzupelnione z formularza
  13. $data = curl_exec($ch);
  14. curl_close($ch);
  15. ?>


mimo to cały czas metoda do proxy jest CONNECT a nie POST. Nie wiem czemu... customrequest wg dokumentacji php załatwia sprawę... Z góry dziękuję za wszelką pomoc.