Pour apprendre Django et AWS, après avoir créé une application Django localement sur la base de l'article suivant, clonez-la de github vers AWS. Article qui permet le développement de système avec Django (Python) _Introduction [Déployez en 20 minutes] Créez un environnement Django + PostgreSQL + Nginx sur AWS EC2 et publiez-le rapidement
Après python3 manage.py runserver
sur AWS, je remarque que le CSS qui a été appliqué à l'écran d'administration localement n'est pas appliqué.
À la suite de la vérification du journal Nginx, j'ai confirmé qu'une erreur que le chemin CSS n'avait pas réussi s'est produite.
$ tail -F /var/log/nginx/error.log
(Omis)
2020/03/21 01:18:04 [error] 23086#23086: *197 open() "/home/ubuntu/repository/mysite/static/admin/css/base.css" failed (2: No such file or directory), client: XXX.XXX.XXX.XXX, server: XXX.XXX.XXX.XXX, request: "GET /static/admin/css/base.css HTTP/1.1", host: "XXX.XXX.XXX.XXX", referrer: "http://XXX.XXX.XXX.XXX/admin/login/?next=/admin/"
Selon Gestion des fichiers statiques dans Django, vous pouvez utiliser la commande collect static
pour passer le chemin.
Après avoir défini les paramètres de gestion du contenu statique de settings.py
comme suit, exécutez python3 manage.py collect static
settings.py
#Ajout des paramètres d'appel de fichier statique en bas
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
PROJECT_NAME = os.path.basename(BASE_DIR)
#STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
$ python3 manage.py collectstatic
You have requested to collect static files at the destination
location as specified in your settings:
/home/ubuntu/repository/mysite/static
This will overwrite existing files!
Are you sure you want to do this?
Type 'yes' to continue, or 'no' to cancel: yes
119 static files copied to '/home/ubuntu/repository/mysite/static'.
Le fichier statique de l'écran de gestion (celui sous ~ / .local / lib / python3.5 / site-packages / django / contrib / admin / static /
) est copié dans le répertoire static.
$ ls ~/repository/mysite/static
admin css images js
(css,image,js créé avec mkdir)
$ ls ~/repository/mysite/static/admin
css fonts img js
Cela a passé le chemin CSS de l'écran de gestion.
Recommended Posts