Django サイトを apache+wsgi から nginx+uwsgi に変換しました。ファイルブラウザを使用したファイルのアップロードを除いて、すべてが正常に機能しているようです。これは apache+wsgi で動作したため、nginx または uwsgi の構成の問題であると想定しています。
私が見ている問題は、アップロードがエラーを返さないことですが、ファイルはディスクに書き込まれません。
トラフィックは、フロントエンド nginx インスタンスによって nginx インスタンスにプロキシされます。
私のnginx.conf
worker_processes 4;
events {
worker_connections 1024;
}
http {
access_log /home/username/logs/user/access_nginx_uwsgi.log combined;
error_log /home/username/logs/user/error_nginx_uwsgi.log crit;
include mime.types;
sendfile on;
set_real_ip_from 127.0.0.1;
real_ip_header X-Forwarded-For;
include /home/username/webserver/nginx/*.conf;
}
そして、私の仮想ホスト構成は.
server {
listen 127.0.0.1:26293;
server_name domainname.com;
access_log /home/username/logs/user/access_tdebt.log combined;
error_log /home/username/logs/user/error_tdebt.log crit;
location /static/ {
alias /home/username/.virtualenvs/tdebt/tdebt/site_static/;
expires 7d;
}
location /media/ {
alias /home/username/.virtualenvs/tdebt/tdebt/site_media/;
expires 7d;
}
location / {
include uwsgi_params;
uwsgi_pass unix:///home/username/webserver/sock/tdebt.sock;
}
}
uwsgi 設定
[uwsgi]
chdir = /home/username/.virtualenvs/tdebt
home=/home/username/.virtualenvs/tdebt
wsgi-file = /home/username/.virtualenvs/tdebt/tdebt/webserver_config/wsgi.py
env = DJANGO_SETTINGS_MODULE=tdebt.settings
master = true
pidfile = /home/username/webserver/pid/tdebt.pid
socket = /home/username/webserver/sock/tdebt.sock
processes = 2
threads = 30
enable-threads = true
harakiri = 120
vacuum = true
reload-on-rss = 30
log-x-forwarded-for = true
idle = 300
procname-master = [username-tdebt] uWSGI Master
procname = [username-tdebt] uWSGI Worker
logto = /home/username/webserver/logs/tdebt_uwsgi.log
logdate = true
どんな助けでも大歓迎です。他に役立つ情報がありましたら、お知らせください。
アップデート:
問題は Apache/mod_uwsgi を使用して複製できるため、問題は django-filebrowser と uwsgi にあるようです。
アップデート:
問題は、私が使用していた django-filebrowser のフォークにありました。何らかの理由で uwsgi では動作しません。