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

550
Vistas
¿Cómo ejecutar Django con el servidor web Uvicorn?

Tengo un proyecto Django ejecutándose en mi máquina local con el servidor manage.py runserver y estoy tratando de ejecutarlo con Uvicorn antes de implementarlo en una máquina virtual. Entonces, en mi entorno virtual, instalé uvicorn e inicié el servidor, pero como puede ver a continuación, no puede encontrar los archivos css estáticos de Django.

 (envdev) user@lenovo:~/python/myproject$ uvicorn myproject.asgi:application --port 8001 Started server process [17426] Waiting for application startup. ASGI 'lifespan' protocol appears unsupported. Application startup complete. Uvicorn running on http://127.0.0.1:8001 (Press CTRL+C to quit) INFO: 127.0.0.1:45720 - "GET /admin/ HTTP/1.1" 200 OK Not Found: /static/admin/css/base.css Not Found: /static/admin/css/base.css INFO: 127.0.0.1:45720 - "GET /static/admin/css/base.css HTTP/1.1" 404 Not Found Not Found: /static/admin/css/dashboard.css Not Found: /static/admin/css/dashboard.css INFO: 127.0.0.1:45724 - "GET /static/admin/css/dashboard.css HTTP/1.1" 404 Not Found Not Found: /static/admin/css/responsive.css Not Found: /static/admin/css/responsive.css INFO: 127.0.0.1:45726 - "GET /static/admin/css/responsive.css HTTP/1.1" 404 Not Found

Uvicorn tiene una opción --root-path así que traté de especificar el directorio donde se encuentran estos archivos, pero aún aparece el mismo error (la ruta es correcta). ¿Cómo puedo solucionar este problema?

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

0

Cuando no se esté ejecutando con el servidor de desarrollo integrado, deberá

  • use whitenoise que hace esto como un middleware Django/WSGI (mi recomendación)
  • use el procedimiento clásico de implementación de archivos estáticos que recopila todos los archivos estáticos en alguna raíz y se espera que un servidor de archivos estáticos los sirva. Uvicorn no parece admitir el servicio de archivos estáticos, por lo que es posible que también necesite algo más (consulte, por ejemplo, https://www.uvicorn.org/deployment/#running-behind-nginx ).

  • (¡muy, muy poco preferible!) hacer que Django sirva archivos estáticos como lo hace en desarrollo

over 4 years ago · Santiago Trujillo Denunciar

0

Agregue a continuación el código de su archivo settings.py

 STATIC_ROOT = os.path.join(BASE_DIR, 'static', )

Agregue el siguiente código en su urls.py

 from django.conf.urls.static import static from django.conf import settings urlpatterns = [. .....] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

Luego ejecute el siguiente comando, pero debe existir un directorio estático

 python manage.py collectstatic --noinput

servidor de inicio

 uvicorn main.asgi:application --host 0.0.0.0
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