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

535
Vistas
Subir archivos grandes Flask Nginx Uwsgi

Tengo una aplicación Flask ejecutándose en un servidor ubuntu remoto con Nginx y Uwsgi. No puedo subir archivos de más de ~200Kb.

Para hacer mi aplicación seguí este tutorial: https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-uswgi-and-nginx-on-ubuntu-18-04

al principio tuve el error 413 que arreglé agregando client_max_body_size 5M; en /etc/nginx/nginx.conf

 user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; client_max_body_size 5M; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; }

Ahora no tengo ningún error, pero aún no puedo cargar archivos más grandes. También cambié el archivo de configuración de mi aplicación uwsgi:

 [uwsgi] module = wsgi:app master = true processes = 10 limit-post = 20000000 ignore-sigpipe=true ignore-write-errors=true disable-write-exception=true socket = main.sock chmod-socket = 660 vacuum = true die-on-term = true logto= /var/log/uwsgi/%n.log

¿Qué más puedo hacer para arreglarlo?

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

0

Parece que ha configurado las variables correctamente. ¿Quizás tiene la configuración MAX_CONTENT_LENGTH establecida en su aplicación Flask? Se vería algo como esto:

 app.config['MAX_CONTENT_LENGTH'] = 50 * 1024 * 1024 # 50 MB

De forma predeterminada, Flask no debería quejarse con solicitudes grandes, pero si esta variable está configurada, arrojará errores 413 cuando la solicitud exceda el valor especificado. Consulte aquí para obtener más información.

Por último, asegúrese de recargar Nginx y su servicio uWSGI con estos comandos:

 > sudo systemctl restart nginx.service > sudo systemctl restart <yourservice>.service

Los sufijos .service son opcionales.

over 4 years ago · Santiago Trujillo Denunciar

0

Gracias Frank por tu respuesta, ha pasado un tiempo desde que abrí este post. Si no recuerdo mal, el error fue un poco más sutil: Flask no tiene una lógica de "reintento" incorporada de forma predeterminada. Esto, en combinación con el servidor más barato que pude encontrar para probar, contribuye al fracaso de algunas de las solicitudes más caras. La implementación de una lógica de "reintento" con el decorador de reintentos resolvió mi problema.

over 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