Esta consulta es de hace 5 años. Tenga eso en cuenta.
joenilson
joenilson
República Dominicana

Si un servidor esta en un grupo de servidores sin acceso...

Si un servidor esta en un grupo de servidores sin acceso a internet directamente el curl no funciona en las páginas de admin_home y updater, la función curl_get_contents debe considerar funciones de proxy a traves de un parámetro de configuracion


private function curl_get_contents($url)
{
if( function_exists('curl_init') )
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
$data = curl_exec($ch);
$info = curl_getinfo($ch);

if($info['http_code'] == 301 OR $info['http_code'] == 302)
{
$redirs = 0;
return $this->curl_redirect_exec($ch, $redirs);
}
else
{
curl_close($ch);
return $data;
}
}
else
return file_get_contents($url);
}


Debería tener una opción para configurar un proxy y el puerto a conectar


private function curl_get_contents($url)
{
if( function_exists('curl_init') )
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
if(!empty(FS_HTTP_PROXY)){
curl_setopt($ch, CURLOPT_PROXYPORT, FS_HTTP_PROXY_PORT);
curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
curl_setopt($ch, CURLOPT_PROXY, FS_HTTP_PROXY_HOST);
}
$data = curl_exec($ch);
$info = curl_getinfo($ch);

if($info['http_code'] == 301 OR $info['http_code'] == 302)
{
$redirs = 0;
return $this->curl_redirect_exec($ch, $redirs);
}
else
{
curl_close($ch);
return $data;
}
}
else
return file_get_contents($url);
}


Con esto garantizamos que siempre podrá conectar a actualizar en caso de que un servidor este detras de un proxy manual o de tipo pac.
28-01-2016 16:56:19   16-02-2016 11:36:22   59   [NeoRazorX]
Muy buena idea.
Si saco tiempo lo integraré en la siguiente actualización ;-)


Copyright (c) 2013-2020 FacturaScripts