Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

243
Vistas
PHP carga archivos grandes, toma mucho tiempo y error

Estoy cargando un archivo grande a través de ajax. La velocidad de carga está bien, pero cuando la barra de progreso llega al 100 %, hay una larga espera y aparece este error.

Error al cargar el recurso: el servidor respondió con un estado de 504 (Tiempo de espera de puerta de enlace) - upload.php .

El archivo aparece en la carpeta de destino, pero no hay una respuesta del servidor.

Esto no sucede con los archivos más pequeños. Parece que lleva mucho tiempo mover_archivo_cargado de la carpeta temporal a la carpeta de destino.

 var xhr, hUploadSpeed; function sendFile() { document.getElementById("serverresponse").innerHTML = "";//clear previous server response var url = "http://www.example.com/wp-content/themes/theme1/file-upload/upload.php"; var formData = new FormData(document.getElementById("form1")); xhr = new XMLHttpRequest(); xhr.upload.addEventListener('progress', uploadProgress, false);//EventListener for upload progress xhr.addEventListener('abort', uploadAbort, false);//EventListener for abort xhr.addEventListener('error', uploadError, false);//EventListener for error xhr.addEventListener('load', uploadThrough, false);//EventListener for completed upload xhr.open("POST", url, true); //xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); //no longer necessary here xhr.onreadystatechange = function() { if(xhr.readyState == 4 && xhr.status == 200) { document.getElementById("serverresponse").innerHTML = xhr.responseText; } } xhr.send(formData); //Send to server hUploadSpeed = setInterval(UploadSpeed, 1000); //per seconds }

Subir.php

 //You can access the uploaded files through $_FILES if(isset($_FILES["file1"])) $target_file = $_SERVER['DOCUMENT_ROOT']."/videos/".$_FILES["file1"]['name']; move_uploaded_file($_FILES["file1"]["tmp_name"], $target_file); echo "File uploaded successfully.";

Esto funciona perfectamente con archivos más pequeños de 50 mb, pero cuando llego a archivos de alrededor de 300 mb. ¿Se tarda tanto?

Tengo un servidor dedicado con este php.ini

 upload_max_filesize = 1200M post_max_size = 1200M max_input_vars = 1000 memory_limit = -1 max_file_uploads = 20 max_execution_time = 7200 max_input_time = 7200 max_input_vars = 1000

¿Por que tarda tanto? ¿Cómo resuelvo?

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

También hay memory_limit en php.ini que puede afectar la carga. php.ini es un archivo de configuración del servidor.

Tienes que aumentar los siguientes valores en tu archivo php.ini :

 php_value upload_max_filesize 10M php_value post_max_size 10M php_value max_input_time 300 php_value max_execution_time 300

y luego reinicie el servidor.

about 4 years ago · Santiago Trujillo Denunciar

0

Creo que su problema puede ser este error de php: https://bugs.php.net/bug.php?id=73807 Su configuración de php está bien.

Corregido en la rama 7 y 7.1. No en php 5.6 ahora. Quizás pronto. Si puede, actualice su aplicación a 7.1 (el rendimiento también es más de 2 veces más rápido), si no puede, simplemente espere php> 5.6.30

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda