Articles of django

nginx提供静态文件; apache django; 安全的文件从Apache到Nginx?

我通过nginx服务所有的静态文件(/静态/和/媒体/),所有其他请求都使用mod_wsgi路由到Apache使用Django的。 nginx充当Apache / mod_wsgi的代理。 据我所知这是推荐的方法,那个静态文件应分开服务。 现在我有下面的情况,一个用户想下载一个文件,但是我需要先检查用户是否被允许下载这个文件(这不是/ static /既/ media /,显然,否则它会公开的)。 这意味着请求必须先到django。 我推荐这里推荐的做法是不让apache提供文件,所以如果用户有权下载文件,是否可以告诉apache使用nginx来提供这个文件?

Python-devel for python 2.7在CentOS 6.4上

好的,我想在生产VPS上运行django web应用程序。 VPS的操作系统是CentOS。 在Python 2.7上编写的应用程序代码。 按照本指南,我已经安装了configuration了虚拟环境的Python 2.7。 但是,因为我打算使用MySQL作为数据库和其他用途,我必须安装软件包python-devel 。 我试图通过命令来安装它 yum安装python-devel 并获得较旧版本的Python的软件包。 我如何为Python v。2.7安装这个包? 如果我覆盖标准的Python,那么系统的几个包(例如yum)将被破坏。 请告诉我,如何解决这个问题。 更新有关版本的信息: CentOS 6.4 Django 1.4 Python 2.7.3 MySQL 14.14

Nginx的网关(502)错误的Django 500错误(而不是显示Django的500页)与DEBUG = False设置

我有我的当前设置的问题…而问题是,如果我在Django的settings.py文件中设置DEBUG = False nginx停止显示500错误的django回溯,但不显示我们的500页。 它只显示nginx 502错误的网关错误。 我确实收到跟踪回复的电子邮件错误,就像我configuration它将回溯邮件发送给我一样。 但我想显示不错的500页给用户不Nginx的502网关错误… 老实说,我甚至不知道从哪里开始寻找问题的根源。 我准备发布所有必要的configuration文件,如果有些nginx专家会来告诉我他想看什么。 艾伦 编辑1:我查了什么日志文件显示在500错误之一,它显示了这一点: [pid: 16203|app: 0|req: 1/1] my.ip.address () {46 vars in 915 bytes} [Thu Sep 12 10:01:17 2013] GET /settings/personal/ => generated 0 bytes in 1249 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0) 这是否意味着它以某种方式django错误导致它看起来像Django返回0字节?

configurationnginx为django开发静态文件

我正在使用Nginx在django开发服务器上提供静态文件。 但是我不能让它工作。 服务器运行良好,但nginx无法find静态文件。 这是我在nginx.conf中的设置: listen 8080; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { #root html; #index index.html index.htm; proxy_pass http://127.0.0.1:8000; proxy_set_header X-Forwarded-Host $server_name; proxy_set_header X-Real-IP $remote_addr; } location /static/ { alias /path/Documents/python_projects/to_pm/static/; access_log off; expires 30d; } 我的项目settings.py: STATIC_URL = '/static/' # for production STATIC_ROOT = os.path.join(BASE_DIR, 'static') 我也用python manage.py collectstatics把所有静态文件复制到/path/Documents/python_projects/to_pm/static/文件夹。 但是当我使用http://localhost:8080这个站点显得非常难看,显然这个静态文件并不是由nginx提供的。 […]

AWS RDS Postgres性能问题

我们使用实例types为db.m4.2xlarge的rds(postgres)。 通常大部分时间连接数是8-10。 但在某些情况下,连接数量增加到100-200。 数据库变得不响应。 数据库无响应性,我们已经看到很多时候在数量突然激增或读取连接的情况下(即使在连接从10增加到100的情况下)。 在max上执行的查询需要2秒才能执行。 我的应用程序服务器运行在Django / Python堆栈(与Gunicorn)。 DB服务器响应时间增加时,这些服务器的延迟变高。 postgres rdsconfiguration的任何改变,我们应该做的改善性能(目前大部分的设置是默认的)?

Nginx的连接()失败(111:连接被拒绝),同时连接到上游

我运行的网站使用Django,Nginx,Gunicorn,Supervisord和fail2ban(只允许ssh,http和https)。 该网站是生活和正常工作,但有一些nginx错误日志条目涉及: connect() failed (111: Connection refused) while connecting to upstream, client: xxxx, server: www.example.com, request: "GET /example/url/to/get/ HTTP/1.1", upstream: "http://[::1]:8000/example/url/to/get/", host: "www.example.com" upstream server temporarily disabled while connecting to upstream, client: xxxx, server: www.example.com, request: "GET /example/url/to/get/ HTTP/1.1", upstream: "http://[::1]:8000/example/url/to/get/", host: "www.example.com" 这是我的nginxconfiguration: upstream app_server_wsgiapp { server localhost:8000 fail_timeout=0; } server { listen 80; […]

lighttpdconfiguration一起运行Django和传统网站

我打算将旧网站迁移到django。 最初,我想使用django的urlwww.mydomain.com/news,并继续使用旧的静态网站的一切。 我对django主机使用的lighttpd没什么经验,所以我需要一些configuration帮助。 对于默认的django安装,lighttpdconfiguration是: # mydomain $HTTP["host"] =~ "(^|\.)mydomain.com$" { fastcgi.server = ( "/django.fcgi" => ( "main" => ( "socket" => env.HOME + "/projectname/projectname.sock", "check-local" => "disable", ) ), ) alias.url = ( "/media" => env.HOME + "/projectname/media", ) url.rewrite-once = ( "^(/media.*)$" => "$1", "^(/.*)$" => "/django.fcgi$1", ) } 我已经改变了路线 "^(/.*)$" => "/django.fcgi$1", 至 […]

Django,uWSGI和Supervisordconfiguration

好吧我有Django,nginx和uWSGI设置在我的服务器上…问题是我通过这个命令手动启动uWSGI: uwsgi -s /home/user/sites/sock/uwsgi.sock -t 10 -M -p 1 -C -pythonpath / home / user / sites / -w mysite.django_wsgi 而且工作很好。 我想要做的事情是使用supervisord来控制uWSGI进程(启动,停止等)。 我将如何做到这一点,supervisordconfiguration是什么样子?

从非标准端口提供静态Web文件

我接近将Django项目部署到生产。 我在看一些基础设施的决定。 有些东西是用不同的服务器(如lighttpd )提供静态文件。 但是,我们从一个专用的服务器开始,所以我们唯一的select是使用静态文件webserver的非标准端口。 这有优先吗? 即是否有人“大”这样做? 任何特定的端口,我应该使用或回避使用? 任何人都可以走这条路线的一些缺点?

chmod一个文件夹永久

有点新手到服务器的东西。 我正在为我的django应用程序运行一个带有whooshsearch引擎的centOS设置。 每次我重新启动或重build我的索引,我得到一个警告,说明IOError: The path to your Whoosh index '/www/test/mysite_index' is not writable for the current user/group. 我如何确保此文件夹保持永久CHMOD'd 谢谢