Articles of django

使用Django和mod_wsgi通过httpd.confredirect

我试图在Django捕获请求之前使用Apache的Rewrite模块redirect用户。 我尝试了以下将用户从“test.php”redirect到“链接”页面 <VirtualHost 10.0.0.3> WSGIDaemonProcess mydomain.com processes=1 threads=15 display-name=$ WSGIProcessGroup mydomain.com DocumentRoot "/home/james/www" <Directory "/home/james/www"> Options +FollowSymlinks RewriteEngine On RewriteRule ^test.php links [NC,R=301,L] Order allow,deny Allow from all </Directory> WSGIScriptAlias / "/home/james/www/app.wsgi" ServerName mydomain.com </VirtualHost> 这种方法不起作用(当浏览到mydomain.com/test.php时,它不会将我redirect到“链接”页面)。 有没有办法用mod_wsgi实现重写?

我如何将Django 1.3.1升级到1.4? 任何提示,教程或警告?

Django 1.4最近被释放。 几乎所有关于Django 1.4的信息都在发行说明中,但是我没有看到有关如何升级的任何信息。 我应该只是删除Python的site-packges内的django文件夹,并下载1.4? 我想我最初使用emerge和yum来安装Django,但我不确定包pipe理系统是否与Django 1.4保持同步。 这可能是我的服务器实例(Gentoo Linux),但在我的本地实例我使用virtualenvwrapper (在Mac OS 10.7),所以也许我想为Djago 1.4创build一个新的Python虚拟环境。 或者可能不是,因为我不太在意与1.3.1的向后兼容性。

用nginx / django安装程序的Arch Linux拒绝显示任何东西

我正在使用Arch Linux服务器在Amazon Ec2上。 虽然我真的很喜欢它,但我却遇到了让nginx显示任何东西的问题。 每当我尝试把我的主机名放入浏览器时,浏览器就会指出由于某种原因它不可用,就好像主机不存在一样。 有一件事我想知道的是,我怎样才能把它启动和运行? 有没有一个特定的Linux的Linuxconfiguration,我必须做的,使其networking可访问? 我有端口80打开,以及端口22.我已经尝试使用gunicorn,python-flup和nginx。 Nginxconfiguration user http; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr – $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; sendfile on; #tcp_nopush on; […]

uwsgi内存使用优化

我正在uwsgi上运行几个django站点,我试图优化我的内存使用configuration,但是-idle和–die-on-idle标志似乎没有做任何事情。 每个守护进程在10-12MB左右开始,一旦服务请求就会增加到30MB左右,但是在闲置一段时间后仍会保留在那里。 我的启动命令是: uwsgi –cheap –idle 60 –die-on-idle –http :8083 –wsgi-file /var/django/mysite/apache/django.wsgi 有什么我在这里失踪? 从文档,我希望“–idle”标志使其在闲置60秒后回落到其初始的内存使用情况; 而且我希望这个“闲置”标志完全杀死了工人的进程。 这些都不会发生,虽然“–cheap”标志似乎工作。 (注意:我知道http不是最好的协议,但是我想在重新编译nginx之前将内存问题sorting)

为什么Apache不能完全停止或重新启动? 我必须手动杀死每一次

我有一台运行Ubuntu 11.10的configurationEC2服务器,在Apache2 / WSGI上运行一个Django应用程序。 这台服务器工作完美,停止和重新启动没有任何问题。 当我克隆这个实例时,它的一切都完全一样。 我没有改变任何有意义的东西。 但是…它不会完全重新启动或停止。 该应用程序运行良好,服务器似乎并没有崩溃…直到我试图重新启动/停止它。 每次尝试停止时,用[OK]消息停止至less需要30到45秒。 我可以马上试着阻止它,它会做同样的事情。 如果我尝试重启,那么它最终会失败,并显示“地址已在使用中”错误。 然后我手动杀死停滞的旧/usr/sbin/apache2 -k start进程以重新启动。 然后,我仍然有4或5个<defunct>过程,在引导的剩余时间内耗尽资源。 我能做些什么来弄清楚为什么会发生这种情况。 这个过程每次都被挂起。 几天来,我一直在抨击这个问题,并不知所措。 ============编辑=========== 我试图将AMI复制到2个以上的实例,一个MICRO和一个SMALL。 这是非常奇怪的:小实例完美的作品。 MICRO实例具有相同的重新启动问题。 为了validation这一点,我又做了同样的事情(克隆到另一个SMALL和另一个MICRO)。 一样….

如何configurationApache2在多个域上同时托pipeDjango和PHP?

我有一个VPS(Ubuntu 10.04),托pipe多个域,其中之一是一个CodeIgniter(PHP)的Web应用程序。 其他人只是静态的网站,不需要花哨的后端语言。 那么我开始一个新的项目,并希望使用Django。 我安装了Django,在Apache2中启用了mod_wsgi,但是当我完成文档的第一步时,它似乎覆盖了现有的Apache2configuration,并将Django欢迎页面提供给我的所有域。 我的httpd.conf文件应该是什么样子,以便它不会超过我所有的域名。

devise80 req / sec站点的服务器设置 – 这样做吗?

可能重复: 你能帮我做一下容量规划吗? 我的任务是devise一个站点的服务器设置,每分钟处理大约5k个请求(每秒80-90个)。 我知道的唯一的约束是该网站可能会被写入Django,并且大部分(如果不是全部)stream量将被encryption。 以下服务器设置是否足以满足这些要求? 这是我第一次这么认真的工作,我将非常感激地收到关于我的devise的评论以及关于这种devise的典型硬件规格的一些信息。

Django,PostGIS,Mac OS X上的Postgres安装问题

所以上下文 Django1.4.x不支持postgis2.0( https://code.djangoproject.com/ticket/16455 ) Postgres9.2x不支持postgis1.5( http://trac.osgeo.org/postgis/wiki/UsersWikiPostgreSQLPostGIS ) 所以为了让三人一起玩,我必须用postgis1.5和postgres9.1x去django1.4。 问题是,安装postgis15 $ brew tap homebrew/versions $ brew install postgis15 首先尝试安装postgres9.2.1作为我不想要的依赖。 无论如何,我仍然得到以下错误 nai@nyc ~ $ brew install postgis15 ==> Downloading http://postgis.refractions.net/download/postgis-1.5.3.tar.gz Already downloaded: /Users/nai/Library/Caches/Homebrew/postgis15-1.5.3.tar.gz ==> ./configure –with-projdir=/usr/local –with-pgconfig=/usr/local/Cellar/postgresql/9.2.1/bin/pg_config ==> make num2_tuples = reltup->reltuples; ^ 4 errors generated. make[1]: *** [lwgeom_estimate.o] Error 1 make: *** [postgis] Error 2 我完全坚持如何让这些版本很好地使用brew一起工作!

NGinXconfiguration为Django和WordPress的子目录

我需要在一个域的根目录build立一个Django站点,然后在一个子目录下(例如/ blog /)安装一个Wordpress。 如何configurationNGinX来做到这一点? “漂亮”的url也必须适用于WordPress。 对于Django,我正在使用已configuration好的Gunicorn。 从NGinX我会打电话给“proxy_pass”来指导。 PHP通过FPM运行。 考虑到上面的限制,我将如何configurationNGinX? 任何帮助,将不胜感激! 谢谢。 更新:我已经尝试了几件事情,目前我有一部分工作。 我已经删除了任何Djangoconfiguration。 然后我在/ blog /子目录中find了WordPress。 在那里,我有test.php,它只是调用phpinfo(),然后test.html,它显示纯净的HTML。 当调用test.php时,页面加载。 但是,当我打电话test.html,或index.php(Wordpress索引页),它给了我一个404。 我的nGinxconfiguration: server { listen 80; root /path/to/www/root; server_name domain.com; access_log /path/to/logs/access.log; error_log /path/to/logs/error.log; location / { index index.php; } location /blog { alias /path/to/www/blog; try_files $uri =404; index index.php index.html; } location ~ /blog/.+\.php$ { include […]

mod_wsgi如何能够针对Python 2.7.3进行编译,而使用2.7.2运行时呢?

以下是我的error_log中显示的内容: [Sat Nov 17 23:13:14 2012] [warn] mod_wsgi: Compiled for Python/2.7.3. [Sat Nov 17 23:13:14 2012] [warn] mod_wsgi: Runtime using Python/2.7.2. 如果我检查我的$ PATHvariables,甚至在/ etc /path中,/ usr / local / bin(其中包含Python 2.7.3)在/ usr / bin(包含Python 2.7.2)之前。 有没有其他的途径我错过了? 我怎样才能得到正确的运行时使用?