Articles of gunicorn

运行nginx的django服务器上的大型媒体文件出现403错误

我使用Nginx和Gunicorn运行DigitalOcean上托pipe的Django服务器。 当我遇到403错误时,我试图通过pipe理界面添加一个2MB的图片。 查看error.log指示权限被拒绝,如下所示: 2017/06/27 01:03:29 [error] 1643#1643: *30 open() "/home/brian/nydkc11/nydkc11/nydkcd11/media/image_main/dtc1.jpg" failed (13: Permission denied), client: 108.29.217.25, server: nydkc11.org, request: "GET /media/image_main/dtc1.jpg HTTP/1.1", host: "nydkc11.org", referrer: "http://nydkc11.org/admin/blog/image/7/change/" 最奇怪的是,较小的图像文件工作得很好(大约18 kb左右)。 任何人都知道为什么大的媒体文件可能会触发这个问题,我该如何解决? 我必须在我的nginx.conf设置client_max_body_size为100M ,如果这是一个有用的事情知道。

Django 301和403在我的静态文件在生产中禁止错误

我试图使用nginx和gunicorn在ubuntu 14.04 vps上部署一个django网站,但我的css文件和js文件没有得到loaded.i在默认的django开发服务器上开发它,它工作得很好,但是当我部署我的网站和collectstatic并尝试通过浏览器访问它只有HTML文本被加载,并在我的浏览器控制台检查,我发现我的静态文件夹301和403 forbidden错误。 ia新手到Ubuntu和Django,以及我在网上find的所有线程和论坛只是指向文件的权限和所有权,并没有任何运气,当我纠正我的权限。 当我尝试访问Djangopipe理员时,我的浏览器错误的截图 这里是我的settings.py import os # Build paths inside the project like this: os.path.join(BASE_DIR, …) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # Quick-start development settings – unsuitable for production # See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = '' # SECURITY WARNING: don't run with debug turned […]

Django + gunicorn + nginx电报webhook ssl麻烦

我试图设置一个django作为webhooks电报机器人。 我使用这个命令创build一个ssl证书: openssl genrsa -out webhook_pkey.pem 2048 openssl req -new -x509 -days 3650 -key webhook_pkey.pem -out webhook_cert.pem # In Common Name i type a server IP address 安装程序在端口800上运行gunicorn,将nginx中的proxy_pass设置为localhost:800。 网站正常工作,我可以打开浏览器,看到我的主页。 Gunicorn从这个命令开始: gunicorn wsgi -b 127.0.0.1:800 # wsgi is django generated wsgi.py file 我的nginx.conf文件: upstream django { server 127.0.0.1:800; } server { listen 80; listen 443 ssl; […]

Nginx + Gunicorn POST请求错误

我使用nginx作为使用gunicorn的Django应用程序的代理,问题是,在某些时候,我收到来自另一个站点的POST请求。 问题似乎是,nginx没有正确地将POST请求redirect到gunicorn守护进程。 我能做些什么来解决这个问题,我需要的是能够发送POST请求,因为它到达我的django应用程序的gunicorn daemor来处理它…谢谢你… 这是我的nginx conf server { server_name www.rinconcolombia.com; access_log /var/log/nginx/rinconcolombia.log; location / { ssi on; proxy_pass http://127.0.0.1:8888; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location /static/ { autoindex on; root /home/rincon/sites/rinconcolombia/checkouts/rinconcolombia/; } location /static/admin_media/ { autoindex on; root /home/rincon/sites/rinconcolombia/checkouts/rinconcolombia/; } } server { server_name www.rinconcolombia.com; rewrite ^(.*) http://www.rinconcolombia.com$1; } 更新发送应用程序的应用程序正在收到一个坏请求错误…如果我手动使用resty或curl […]

Django:行被删除后仍然显示 – 由于caching?

我写了一个使用DataTables的Django应用程序。 问题是当我从表中删除一行时,它仍然显示在表中运行nginx / gunicorn时。 但是,当我运行在Djangotesting服务器上时,它正常工作。 所以如果我用这个命令行启动一个服务器: python manage.py runserver 192.168.0.1:8000 一切正常。 也就是说,我删除该行,表刷新,并且不显示已删除的行。 这是HTTP调用的摘要: // An initial GET command to populate the table GET /myapp/get_list (returns a list to display) // I now select a row and delete it which causes this POST to fire POST /myapp/delete (deletes a row from the list) // After the […]

HTTPFound返回的位置标头不包含非标准的端口号

我有一个金字塔应用程序运行在nginx后面(监听端口8080)上的gunicorn(在Unix套接字上侦听)。 当Pyramid视图返回HTTPFound(location='/') HTTP响应包含Location: http://example.host/没有端口号,所以用户得到“无法连接”的错误。 我找不到指定非标准端口号的位置,或者(最好)在生成Location标题时告诉金字塔从请求中提取它。 从应用程序configuration摘录: [server:main] use = egg:gunicorn#main host = unix:%(here)s/run/server.sock workers = 4 Nginxconfiguration: server { listen 8080; root /path/to/app; location / { proxy_pass http://unix:/path/to/app/run/server.sock; include proxy_params; } location /static { root /path/to/app/static; } }

Gunicorn-Django:找不到django项目

我一直在尝试通过Django,Gunicorn,nginx设置我的生产服务器(Linode 512),我在nginx和gunicorn中遇到错误。 由于nginx部分纯粹涉及服务器问题,我得张贴在serverfault。 但是对于Gunicorn错误,这与我的项目结构有关 Django Project/ apps/ confs/ development/ production/gunicorn.conf settings/ custom.py database.py development.py production.py default.py static/ js/ css/ admin/ templates/ manage.py urls.py 这个结构在Django开发服务器上工作正常,但是当我尝试使用Gunicorn时,它显示RuntimeError("django project not found")完整的错误细节在这里 Gunicorn设置: import os def numCPUs(): if not hasattr(os, "sysconf"): raise RuntimeError("No sysconf detected.") return os.sysconf("SC_NPROCESSORS_ONLN") bind = "unix:/opt/Project1432/shared/gunicorn.sock" workers = numCPUs() * 2 + 1 pidfile = "/opt/Project1432/shared/Project1432.pid" […]

如何在Python / Flask应用程序中使用WSGI – HasGeek最终用户?

我正尝试在我的机器上安装最终用户OAuth服务器。 所以我打算用SSL(在443上)和lastuser app作为WSGI服务器设置Nginx。 HasGeek最后用户 我已经使用Nginx设置了HTTPS / SSL,并且在我的机器上工作正常。 但WSGI服务器不工作。 最后用户基本上是一个带有WSGI脚本website.wsgi的Flask应用程序。 import sys import os.path sys.path.insert(0, os.path.dirname(__file__)) from lastuserapp import app as application, init_for init_for('production') 我尝试使用gunicorn WSGI,并得到错误ImportError: No module named wsgi ,如下所示: $ gunicorn -b localhost:7000 website.wsgi 2014-03-03 17:06:49 [31267] [INFO] Starting gunicorn 0.13.4 2014-03-03 17:06:49 [31267] [INFO] Listening at: http://127.0.0.1:7000 (31267) 2014-03-03 17:06:49 [31267] [INFO] Using […]

Django + Gunicorn + nginx内部服务器错误,错误在哪里以及如何解决?

所以我正在运行非常标准的设置,我跟着我以前做过的相同的教程,但现在不知道原因不起​​作用。 当我运行./manage.py runserver my_ip:8000它工作正常。 当我通过bin/gunicorn_start运行我的gunicorn脚本,它工作正常,并创build了袜子文件然而,当我通过监督和nginx运行gunicorn脚本,它导致与Internal Server Error ,并没有错误日志中的信息。 我究竟做错了什么? 我猜这是gunicorn或权限问题? 斌/ gunicorn_start #!/bin/bash NAME="today" # Name of the application DJANGODIR=~/deployment/today_project/ SOCKFILE=~/deployment/run/gunicorn.sock # we will communicte using this unix socket USER=ferski # the user to run as GROUP=ferski # the group to run as NUM_WORKERS=3 # how many worker processes should Gunicorn spawn DJANGO_SETTINGS_MODULE=today_project.settings # which […]

http 403错误+“readv()失败(104:连接重置由同级)而读取上游”

前言:我使用s3boto作为默认存储后端在amazon ec2实例上运行nginx + gunicorn + django。 我是免费的。 ec2安全组允许:http,ssh和https。 我试图发送包含单个元素的多部分/表单数据请求:照片。 试图上传照片时,iPhone(来自请求的来源)挂起。 照片大小约为9.5 MB。 当我检查nginx-access.logs时: “POST / myUrl / HTTP / 1.1”400 5“ – ”“…. 当我检查nginx-error.logs时: [error] 5562#0: *1 readv() failed (104: Connection reset by peer) while reading upstream, client: my.ip.addr.iphone, server: default, request: "POST /myUrl/ HTTP/1.1", upstream: "http://127.0.0.1:8000/myUrl/", host: "ec2-my-server-ip-addr.the-location-2.compute.amazonaws.com" [info] 5562#0: *1 client my.ip.addr.iphone closed […]