Django が uwsgi+nginx プロキシで静的リソースにアクセスできない問題の解決方法

Django が uwsgi+nginx プロキシで静的リソースにアクセスできない問題の解決方法

uwsgi+nginx プロキシ Django をデプロイする場合、uwsgi を使用したアクセスは正常ですが、nginx プロキシ ポート アクセスを使用すると静的リソースにアクセスできません。

解決:

  • nginx の起動ユーザーを確認し、このユーザーに静的リソースへのアクセスを許可します。
  • たとえば、静的リソースディレクトリは次のようになります: /data/django/static
  • 強化: ch mod 755 /data/django/static -R

uwsgi 設定:

# uwsig は設定ファイル [uwsgi] を使用して起動します
# プロジェクトのルートディレクトリは chdir=/data/django/dailyfresh です
# 起動コマンドとは異なるプロジェクトのアプリケーションを指定します --wsgi-filemysite/wsgi.py
#logsquery 独自のアプリケーション名module=dailyfresh.wsgi:application
#Nginxと通信するローカルのUNIXソケットファイル
# sock のファイル パスを指定します。この sock ファイルは、nginx と uwsgi 間の通信用に nginx の uwsgi_pass に設定されます。# ip+port モードとソケット ファイル モードをサポートします #socket=/etc/uwsgi/uwsgi.sock
ソケット=127.0.0.1:9001
# プロセス数 = 8
# プロセスあたりのワーカー数 = 5
procname-prefix-spaced=dailyfresh # uwsgi プロセス名プレフィックス py-autoreload=1 # py ファイルの変更、自動読み込み # IP ポート、Web アクセス エントリの指定 http=0.0.0.0:9000
# uwsgi のユーザー名とユーザーグループ uid=root を起動します
gid=ルート
# マスタープロセスを有効にする master=true
# サービスが停止したときに自動的に UNIX ソケットと PID ファイルを削除するvacuum=true
# 受信したコンテンツをシリアル化します。可能な場合は thunder-lock=true にします。
# スレッドを有効にする enable-threads=true
# サーバーのリクエスト制限を超える追加リクエストを中断するためのタイムアウトを設定します harakiri=30
# post-buffering=4096 に設定
# ログディレクトリを設定します daemonize=/var/log/uwsgi/uwsgi.log
# uWSGI プロセス番号は pidfile = /etc/uwsgi/uwsgi.pid に保存されます

nginx の設定:

サーバー{
            9002を聴く;
            サーバー名 192.168.2.100;
            アクセスログ /var/log/test.log;
            エラーログ /var/log/test.log;
            文字セット utf-8;
            クライアントの最大ボディサイズは100Mです。
            場所 /static{
                    エイリアス /data/django/dailyfresh/static;
            }
            場所 /メディア{
                    エイリアス /data/django/dailyfresh/media;
            }
            位置 / {
                    uwsgi_params を含めます。
                    uwsgi_pass 127.0.0.1:9001;
            }
            エラーページ 500 502 503 504 /50x.html;
            場所 = /50x.html {
                ルートhtml;
            }
}

uwsgi+nginx proxy Django が静的リソースにアクセスできない問題の解決策に関するこの記事はこれで終わりです。uwsgi+nginx proxy Django がアクセスできないことに関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Nginx+Uwsgi+Djangoプロジェクトをサーバーにデプロイするアイデアの詳細な説明
  • Django プロジェクト uwsgi+Nginx ナニーレベル デプロイメント チュートリアル実装
  • Django uwsgi Nginx の実稼働環境への詳細な展開
  • uwsgi+nginx を使用した Django プロジェクトのデプロイ例
  • Django+Uwsgi+Nginxによる本番環境導入の徹底解説
  • Django2+uwsgi+nginxがUbuntu16.04サーバーにオンラインでデプロイされています
  • Django + Uwsgi + Nginx による本番環境の導入方法
  • nginx+uwsgi で Django をデプロイする際のすべての問題を解決する (要約)

<<:  曇り空のアイコン効果を実現する純粋な CSS

>>:  MySQLのスレッド実行の急増とクエリの遅延の問題を解決する

推薦する

Tomcat サーバー入門の超詳細なチュートリアル

目次1. Tomcat の概念–1、サーバー–2、ウェブサーバー–3、Tomcatサーバー次にTom...

Dockerでmysqlのルートパスワードを変更する方法

最初のステップはmysqlコンテナを作成することです docker exec -it コンテナID ...

Tomcat でのサーブレットの作成と実装に関する深い理解

1. サーブレットとは何か1.1. 正式な言葉で説明する:サーブレットは、動的な Web リソースを...

nginx の default_server 定義とマッチングルールの詳細な説明

nginx の default_server ディレクティブは、server_name と一致しない...

携帯電話に GreasyFork js スクリプトをインストールするチュートリアル

目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...

Tomcat は親の委任メカニズムを破壊して Web アプリケーションの分離を実現します。

目次Tomcat クラスローダー階層WebAppクラスローダー共有クラスローダーカタリナクラスローダ...

MySQLのnull値に関する小さな問題

今日、null 値をテストしていたところ、小さな問題が見つかりました。ここに記録しました。以前にも遭...

CSS パフォーマンスの最適化 - will-change の使用方法の詳細な説明

will-change は、要素にどのような変更が行われるかをブラウザに伝え、ブラウザが事前に最適化...

MySQL でスロークエリログ機能を有効にする方法

MySQL スロー クエリ ログは、問題のあるクエリを追跡するのに非常に役立ちます。現在のプログラム...

MySQL グループ化クエリと集計関数

概要私たちは、双十一に天猫で化粧品を購入する人の平均支出額を知りたい(商品の価格帯を見つけるのに役立...

Vueはツリー構造の追加、削除、変更、チェックのサンプルコードを実装します

実は多くの会社がユーザー権限ツリーに似た機能を持っています。最近、追加、削除、修正のツリー構造を書き...

MySQLサーバーは--read-onlyオプションで実行されているため、このステートメントを実行できません

会議中に同僚から開発ライブラリを書き込めないとの報告を受けました。エラー メッセージは次のとおりでし...

Vueでパスワードの表示と非表示機能を実装するアイデアを詳しく解説

効果: アイデア:入力タイプ属性を使用して、タイプ値がテキストの場合はパスワードを表示し、タイプ値が...

Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュートリアル

Ubuntu Server 16.04 MySQL 8.0 のインストールと設定のグラフィックチュー...

条件付きコメント形式の書き方とサンプルコード

フロントエンドエンジニアとして、IE は私たちにとって馴染み深いものであるはずです。設計案を実装する...