Header konusunda bişi diyemicem (sanırım anlamadım) ama post etmek mümkün
Kendi kullandığım örneklerden birini açıklamalı vereyim
$ch = curl_init(); // curl oturumunu aç
curl_setopt($ch, CURLOPT_URL, 'http://www.xxx.com/login.php'); //post atılacak adres
curl_setopt ($ch, CURLOPT_POST, 1); //yukarıdaki adrese post atacağımızı belirtiyoruz
curl_setopt ($ch, CURLOPT_POSTFIELDS, 'loginname=xxx&password=zzz');// sayfanın kaynak kodundan aldığımız form değerlerini post etmek için gerekli değerleri yazıyoruz
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'dosya.txt');//login olduktan sonra gelen cookie değerlerini aldık kullanmak için dosyaya kaydettik (yazma hakkı olmalı)
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$store = curl_exec ($ch); //posttan sonra gelen sayfayı alıp değişkene kaydettik (sana lazım olmayabilir)
curl_setopt($ch, CURLOPT_COOKIEFILE, 'dosya.txt');//az önce aldığımız cookie değerlerii kullanmak için dosyaya kaydetmiştik şimdi onları yeni bir sayfada kullanmak için geri alıyoruz
curl_setopt($ch, CURLOPT_URL, "http://www.zzz.com/xyz.php");//user pass ile giriş yapılan sayfamızı alıyoruz
$icerik = curl_exec ($ch);// user-pass ile giriş yapılabilen sayfanın çıktısı elimizde artık
curl_close ($ch);// oturumu kapatalım - hafızada yer kaplamasın