Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

142
Views
No puedo subir archivos grandes

Estoy usando reaccionar en el frontend y express en el backend.

Aquí está mi código que uso para cargar archivos:

 const formData = new FormData(); formData.append('file', blob); formData.append('title', videoName); const request = new XMLHttpRequest(); request.open('POST', `${process.env.URL}/api/video`); request.withCredentials = true; request.setRequestHeader('lang', router.locale as string) request.upload.onprogress = e => { setUploadProgress(Math.floor((e.loaded / e.total) * 100)); }; request.onload = () => { const resp = JSON.parse(request.response); setRequestErr({ mess: resp.message, code: resp.statusCode }) resp.statusCode === 401 && logoutUser() setIsVideoBeingSent(false); setModalType('info') if(resp.status === 200){ setModalInfoType('success') } else{ setModalInfoType('fail') } }; request.send(formData);

Funciona perfectamente localmente, tanto en archivos más pequeños como más grandes (hasta 150 mb).

El problema ocurre cuando intento subir el archivo a un servidor alojado en amazon. El archivo de 150 mb se detiene en alrededor del 25 por ciento y no se mueve más.

Estoy usando express-fileupload con configuraciones:

 const fileUpload = require('express-fileupload'); let Options = { limits: { fileSize: 200 * 1024 * 1024 }, useTempFiles: true, abortOnLimit: true, tempFileDir: './content/tmp/', uploadTimeout: 0, debug: true, } router.post("/", TokenVerify, fileUpload(Options), UploadVideo);

La consola en el servidor no muestra nada, ni errores ni otros mensajes. La consola en el navegador solo devuelve:

 POST /api/video net::ERR_CONNECTION_ABORTED

¿Cuál podría ser la causa de esto?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Si está usando una máquina virtual o un servicio que usa uno en su servidor de Amazon, entonces es probable que esté usando Apache o Nginx para enviar su tráfico en el puerto 80 a su aplicación. Lo que significa que las configuraciones de su servidor express en lo que respecta a los límites de carga de archivos no importan en absoluto, pero la que está en el servidor http que está utilizando, por lo que si es Nginx: establezca la directiva client_max_body_size en su límite deseado, por ejemplo, client_max_body_size 100; Esto se puede hacer como se explica en esta respuesta

Y en cuanto a apache, esto debería ayudarlo: la configuración del límite de carga de archivos de apache

Sin embargo, si no tiene acceso ssh a su entorno de producción, entonces debería haber un archivo de configuración del servidor que pueda usar para editar los límites. O algunas configuraciones de interfaz gráfica de usuario que puede editar.

El punto más importante aquí es que establezca su límite de carga tanto en su servidor express como en el servidor http que enruta las solicitudes de sus clientes.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!