14

gunicorn と nginx を使用して django プロジェクトを展開しようとしていますが、助けが必要です。gunicorn myproject.wsgi:application をコーディングすると、自分の Web サイトが localhost ページに表示されますが、css はありません。プロジェクトの静的フォルダーにある css ファイルを gunicorn がロードしないのはなぜですか?

Guinicorn_start スクリプト: https://dpaste.de/TAc4 Gunicorn 出力: https://dpaste.de/C6YX

4

3 に答える 3

22

Gunicorn は動的コンテンツ、つまり Django ファイルのみを提供します。したがって、静的コンテンツ (CSS ファイル) を処理するには、nginx などのプロキシ サーバーをセットアップする必要があります。Gunicorn を正しい方法で起動していると思いますので、静的ファイルを提供するように nginx を構成するだけです。次のような構成を使用できます。ここでは、静的ファイルへのパスを変更するだけです。

server {
    listen       80;
    server_name  localhost;

    location / {
        root   html;
        index  index.html index.htm;
        proxy_pass http://127.0.0.1:8000;
    }
    location /static {
        autoindex on;
        alias /path/to/staticfiles;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
}

この構成がセットアップされている場合でも、css を機能させるには「./manage.py collectstatic」を呼び出す必要があります。

于 2013-11-27T13:53:22.230 に答える
3

Gunicorn は、サイトの django の側面を提供することのみを担当します。

静的ファイルは、nginx によって提供される必要があります。参照: Django アプリの nginx と gunicorn を使用して静的ファイルをサーバーに正確に送信するにはどうすればよいですか? . これは、nginx.confファイルで構成する必要があります。ここに投稿していただければ、ご覧いただけます。

于 2013-11-24T14:56:41.330 に答える