cURL - İşleme izin hatası

6 Cevap php

Hey, I'm trying to use cURL with PHP and its giving me this error:

"Failed to connect to 208.77.188.166: Operation not permitted"

Ben onun bir sunucu sorunu eminim - ama sadece durumda, burada benim kodu:

<?php

$ch = curl_init();
$url  ="http://www.example.com";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$output = curl_exec($ch) or die(curl_error($ch));
echo $output;

?>

Apache etkindir cURL, ben dosyanın izinlerini 777 olarak değişiyor denedim.

Herhangi bir fikir?

6 Cevap

. It apache üzerinde bulunuyor eğer htaccess dosyasında yapabilirsiniz - Bu allow_url_fopen (reference) etkinleştirmeniz gerekir mümkündür.

. Siz htaccess dosyasında bu koyarak bu etkinleştirebilirsiniz:

php allow_url_fopen on

Emin Gerekli tüm CURL seçeneklerini ayarlayın olun:

  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HEADER         => false,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_ENCODING       => "",
  CURLOPT_USERAGENT      => "spider",
  CURLOPT_AUTOREFERER    => true, 
  CURLOPT_CONNECTTIMEOUT => 120,
  CURLOPT_TIMEOUT        => 120,
  CURLOPT_MAXREDIRS      => 10,

Ben de sen de böyle bir şey kullanarak hataları yankı önereceğim:

$hostconnect = curl_init($url);
$errmsgcurl  = curl_error($hostconnect);
echo $errmsgcurl;

Yukarıdaki kod test edilmiş ve bu sadece bir örnek olarak hizmet değildir.

Ayrıca yerel bir apache sunucu üzerinde kodunuzu sorun kolayca oturur nerede söyleyebilirim bu yolu denemenizi öneririz.

Many shared hosting providers prohibit outbound connections. BlueHost, örneğin, giden bağlantılara izin vermeden önce bir statik IP satın gerektirir. Sonra emin CURL kullanmak arayüz giden ne biliyor olmanız gerekir.

Aldığınız hata büyük olasılıkla tüm giden bağlantılara engelleme bir güvenlik duvarı yapmak olduğunu. Birçok hosting sağlayıcıları ardından uzaktan sunucuya karşı bir saldırı vektörü olarak kullanılması gereken izin PHP yaygın hataları durdurmak için denemek için giden port 80 bağlantıları engelliyor.

Host başvurun ve bu durumda eğer uzak ana bilgisayara bağlanmak için alternatif bir yol bulmak gerekir, ya da hosting şirketleri hareket edecektir lütfen.

Sen sunucuda veya iş istasyonunda (komut satırı sürümü) yüklü kıvrılma bir sürümünü kullanıyorsanız, deneyin ve hata çoğaltmak için çalışmalısınız, tüm sen sunucusuna bağlıdır ki kıvırmak isteği bir yönlendirme başlığı ayarlamak gerekir, ama olabilir temas kurmaya çalışıyor.

Bir proxy sorunu veya sunucu üzerinde kimlik doğrulama sorunu bir tür olabilir - normal bir web tarayıcısı kullanarak bu URL'yi erişebilir?