#現状
初期設定のままnginxでプロダクトを立ち上げ、/adminで管理者画面に行くと
このようにローカルの時とは違うスタイルで出力されてしまう。
ページの検証でコードを確認すると、stylesheetのリンクは示されていることがわかる。しかし、このurlをクリックするとnginx 404 not found エラーが出る。
つまりsytlesheetのリンクが未設定ということである。(/var/log/****/error.logからも確認できる。)
#解決策
nginxでファイルのpass指定をするのは**/etc/nginx/sites-available**というfileである。
初期設定ではこのようになっているであろう。
cat /etc/nginx/sites-availabe
server{
listen 80;
server_name 54.249.69.17;
location = /favicon.ico {access_log off; log_not_found off;}
location /static/ {
root /home/ubuntu/myblogapp2/myblogapp;
}
location / {
include proxy_params;
proxy_pass http://unix:/home/ubuntu/myblogapp2/myblogapp/myblogapp.sock;
}
}
ここに以下のようにadminのstylesheetのpassを指定すれば良い
/etc/nginx/sites-available
server{
listen 80;
server_name 54.249.69.17;
location = /favicon.ico {access_log off; log_not_found off;}
location /static/ {
root /home/ubuntu/myblogapp2/myblogapp;
}
location /static/admin {
root /home/ubuntu/py36/lib/python3.6/site-packages/django/contrib/admin/static/admin;
}
location / {
include proxy_params;
proxy_pass http://unix:/home/ubuntu/myblogapp2/myblogapp/myblogapp.sock;
}
}
これで無事/adminに行けばローカルと同じスタイルの管理者画面が開かれる。
Good Luck!