Foros del Web » Programando para Internet » PHP »

Ayuda con fread para descargas

Estas en el tema de Ayuda con fread para descargas en el foro de PHP en Foros del Web. Hola amigos de foros del web, un gusto saludarlos nuevamente. Tengo un problema con la funcion readfile(); pues la uso para efectuar descargas desde mi ...
  #1 (permalink)  
Antiguo 04/11/2008, 20:09
 
Fecha de Ingreso: mayo-2006
Mensajes: 288
Antigüedad: 17 años, 11 meses
Puntos: 4
Ayuda con fread para descargas

Hola amigos de foros del web, un gusto saludarlos nuevamente.
Tengo un problema con la funcion readfile(); pues la uso para efectuar descargas desde mi pagina web.

Pero el caso es que me produce mucha carga en el servidor por ejemplo cuando hay muchos usuarios en simultaneo, me gustaria saber su hay otra funcion mas eficiente que me ayude a efectuar un transferencia asi y que me redusca el uso de memoria en el server.

Por siacaso aqui,pongo mi codigo por si hubiese alguna forma de mejorarla asi hacerla mas eficiente usando solo readfile();.


Código PHP:
<?
header
("Pragma: public"); 
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false); 
header("Content-Type: application/force-download");
header("Content-Transfer-Encoding: binary");

$tourl $_GET['descargar'];

readfile("$tourl");
exit();

?>
  #2 (permalink)  
Antiguo 04/11/2008, 20:13
 
Fecha de Ingreso: mayo-2006
Mensajes: 288
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Ayuda con fread para descargas

A por cierto no me gustaria usar

Header(Location: $tourl);

No me convendria creo por que solo redireccionaria y no definiria correctamente las cabeceras.
  #3 (permalink)  
Antiguo 04/11/2008, 20:22
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con fread para descargas

pues no hay una función mágica...

del modo en que lo haces, y aun... usando sockets o CURL siempre vas a tener el mismo problema si permites que tus usuarios descarguen lo mismo, al mismo tiempo...

así que no hay optimización disponible para tu código...

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 04/11/2008, 23:05
 
Fecha de Ingreso: mayo-2006
Mensajes: 288
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Ayuda con fread para descargas

ummm pero me dejas dudas pues si existen fread y read file con diferentes algoritmos de uso.

El caso es que que quisiera saber cual es mas efectivo, dicho de otra manera cual de estas dos funciones, que almenos conosco pues deben de haber muchas mas, es las mas ventajosa en cuanto a consumo de memoria del servidor. ;)

Supongo que al ser dieferentes uno tiene cierta venjata frente a otro verdad por que de tal modo seria ilógico que existiesen funciones iguales, seria redundante :(
  #5 (permalink)  
Antiguo 04/11/2008, 23:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con fread para descargas

mmm.... no necesariamente redundante, si no mas bien específicos...

según el manual de PHP (deberías leerlo) file_get_contents es la base de la lectura de archivos, bien.... se trata de sistema de archivos, pero tu necesitas leer URL por eso el interprete hace uso de protocolos para descargar lo necesario....

es ahí, donde debes investigar adecuadamente en la documentación (y me refiero a ti) las diferencias entre estos "wrappers" y las extensiones CURL y sockets, para ver en que se diferencian... cierto?

readfile/file/file_get_contents/fread etc.. son funciones del sistema de archivos, quiza esa es la diferencia en la que debes concentrarte ya que estas haciendo un uso excesivo de ancho de banda, primero.... al leer una URL externa y luego enviarla directamente (esto duplica la carga)

ahora que lo pienso, me imagino que con un .htaccess logras el mismo efecto haciendo una redirección controlada en ves de tomar la responsiva de leer y escribir, mucha vuelta pienso yo...

espero te sirvas, suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 05/11/2008, 11:55
 
Fecha de Ingreso: mayo-2006
Mensajes: 288
Antigüedad: 17 años, 11 meses
Puntos: 4
Respuesta: Ayuda con fread para descargas

ummm
ok Bien gracias buscare en el mnul haber que encuentro :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:35.