Articles of django

Lighttpd从www.domain.comredirect到domain.com

我需要将所有www.domain.com永久redirect到Lighttpd中的domain.com。 这里是我的lighttpd.conf的相关部分: $HTTP["host"] =~ "^www\.domain\.com$" { url.redirect = ( "^/(.*)" => "http://domain.com/$1" ) } $HTTP["host"] =~ "(^|\.)domain\.com$" { … url.rewrite-once = ( … "^(/.*)$" => "/mysite.fcgi$1", ) } 问题是像http://www.domain.com/blah/的所有URL都被redirect到http://domain.com/mysite.fcgi/blah/ 我需要“mysite.fcgi”重写规则,因为它将请求发送到fastcgi实例。 如何正确redirect?

子域与文件夹/目录

我目前正在构build一个Web应用程序,我希望我的用户有自己的URL来标识它们。 我可以做这个使用子域名或使用文件夹,我想知道什么是两者的优点和缺点。 我真的很喜欢这个文件夹解决scheme,因为我的url映射相当简单。 我已阅读有关自动生成的子域名,一个解决scheme是创build虚拟主机,然后重新启动我的nginx。 这是一个解决scheme,但我宁愿不必每次创build一个新的帐户时重新启动我的Web服务器。 如果有任何其他的方法来做自动子域创build,这将是伟大的! 谢谢!

Re:Django / WSGI和PHP如何共享Apache?

回应: Django / WSGI和PHP如何共享Apache? 你好, 你可以请张贴完整的configuration文件/网站可用 我有一个问题,似乎重写引擎redirect到Django的所有请求,所以静态和PHP文件不服务,而是我看到的Django的404页面。 如果我摆脱重写规则,然后静态文件和PHP的作品。 这里是我的Apacheconfiguration文件/网站可用 <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /home/www/django <Directory /> Options +FollowSymLinks ExecCGI Indexes AllowOverride None DirectoryIndex index.php AddHandler wsgi-script .wsgi </Directory> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ /mysite.wsgi/$1 [QSA,PT,L] 〜 和我的.wsgi文件: 导入网站 site.addsitedir( '/家庭/用户/ .virtualenvs / url.com / lib中/ python2.6的/站点包') import操作系统,系统 path ='/ home / www […]

应该为WSGIDaemonProcess使用哪个用户帐户?

我有一些使用Apache2和mod_wsgi部署的Django站点。 在configurationWSGIDaemonProcess指令时,大多数教程(包括官方文档)build议将WSGI进程作为代码所在的主目录中的用户来运行。 例如: WSGIScriptAlias / /home/joe/sites/example.com/mod_wsgi-handler.wsgi WSGIDaemonProcess example.com user=joe group=joe processes=2 threads=25 但是,我想知道是否将wsgi守护进程作为开发代码的相同用户(具有相应的权限)运行是非常明智的。 我应该build立一个服务帐户,其唯一的特权是对代码的只读访问,以便有更好的安全性? 还是我的担忧被夸大?

Django应用程序显示相同的页面,不pipe访问什么url

我有一个简单的Django应用程序,用于testing使用Nginx,FastCGI(在撰写本文时使用最新版本的flup)和daemontools的新部署策略。 基本上问题是如果我访问domain.com的主页面显示正确,但如果我访问domain.com/example/它仍然显示主页面。 这似乎是FastCGI对我来说的一个问题,但我完全难住了。 无论我访问的是哪个页面,都会显示主页面。 没有错误,没有什么。 它像它总是只是默默地返回相同的网页,不pipe什么url。 nginx的错误日志完全没有任何显示,所以这没有帮助。 该项目使用开发服务器100%完美工作,但只是在服务器上失败。 我的守护进程运行文件如下: #!/usr/bin/env bash source /envs/domain.com/bin/activate PROJ_DIR=/project exec envuidgid simon python $PROJ_DIR/manage.py \ runfcgi method=threaded minspare=1 maxspare=2 host=127.0.0.1 \ port=9001 pidfile=$PROJ_DIR/proj.pid daemonize=false 我的nginxconfiguration: server { listen 80; server_name domain.com; rewrite ^/(.*) http://www.domain.com/$1 permanent; } server { listen 80; server_name www.domain.com; access_log /domain.com/logs/access.log; error_log /domain.com/logs/error.log; root /domain.com/public_html; index index.html; […]

如何让python / django访问postgres db而不需要sudo -u

在Linux / django / python / postgres安装中仍然是新的。 我安装了最新的kubuntu 11.04,安装了postgres和django软件包。 我已经在postgres中创build了一个django_login和一个数据库django_db,供django使用。 当我在数据库中创build基本django框架的时候,我有一些麻烦。 如果我键入,它工作正常 sudo -u django_login python manage.py syncdb 但是当我不使用sudo -u django_login时,它不起作用。 不过,我的帐户是在postgres superadmin,我创build了一个系统帐户django_login和我的帐户是这个组的一部分。 我错过了什么?

我需要ports.conf Apacheconfiguration吗?

我正在使用nginx向Apache提供静态内容和代理请求,以便为Django提供服务。 我有多个域,每个域都有它自己的端口和Apache VirtualHostconfiguration。 例如,domain1.com proxy_pass为127.0.0.1:8000,domain2.com proxy_pass为127.0.0.2:8010等 我删除了NameVirtualHost并从ports.conf 。 任何我需要那里的理由? 听起来像每个域的VirtualHost伎俩。

如何在EC2上的nginx的uWSGI上运行Django 1.3 / 1.4(Apache2工程)

我代表我的pipe理员发布了一个问题。 基本上,他想要设置Django应用程序(在Django 1.3上制作,但是将转移到Django 1.4,所以这两个应用程序中的哪一个应该工作,我希望)在安装在Amazon EC2上的nginx上的WSGI上。 当使用Django的开发服务器(例如使用./manage.py runserver 0.0.0.0:8080 )时,应用程序运行正常,Apache也正常工作。 唯一的问题是nginx,而且看起来nginx / WSGI或Djangoconfiguration还有其他问题。 他的描述如下: 服务器已根据许多教程进行了configuration,但不幸的是,Nginx和uWSGI仍然不能与应用程序一起工作。 ProjectName.py: import os, sys, wsgi os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ProjectName.settings") from django.core.wsgi import get_wsgi_application application = get_wsgi_application() 我通过命令运行uWSGI: uwsgi -x /etc/uwsgi/apps-enabled/projectname.xml XML文件: <uwsgi> <chdir>/home/projectname</chdir> <pythonpath>/usr/local/lib/python2.7</pythonpath> <socket>127.0.0.1:8001</socket> <daemonize>/var/log/uwsgi/proJectname.log</daemonize> <processes>1</processes> <uid>33</uid> <gid>33</gid> <enable-threads/> <master/> <vacuum/> <harakiri>120</harakiri> <max-requests>5000</max-requests> <vhost/> </uwsgi> 在来自uWSGI的日志中: *** no app loaded. going in […]

未findNginx,Uwsgi和Django应用程序

我在CentOS上用uWSGI和Djangoconfiguration了Nginx。 Django目录(包含我所有的Django应用程序): / home Django项目目录: / home / hdblog /home/hdapp.py包含如下: import os, sys sys.path.append('/home') os.environ['DJANGO_SETTINGS_MODULE'] = 'hdblog.settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() 我正在使用下面的命令: /etc/init.d/uwsgi –socket 127.0.0.1:8889 –master –workers 2 –harakiri 30 –disable-logging –daemonize /tmp/daemonize.log –pidfile /tmp/pidfile.txt –vacuum –gid 500 –uid 500 –pythonpath /home/hdblog –module hdapp 另外,我的/etc/nginx/conf.d/default.conf包含下面的行: location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8889; } 正如你可以看到一切正常,但我看到80端口 […]

使用VirtualEnv运行Gunicorn的“正在使用的连接”

我正在尝试使用Gunicorn和NGINX来build立一个开发环境。 遵循本教程: http : //ijcdigital.com/blog/django–gunicorn-and-nginx-setup/ 我得到以下错误: (WebApp)sl@cker:~/MyApps/WebApp$ gunicorn_django –bind=127.0.0.1:8001 2012-07-12 14:04:30 [5997] [INFO] Starting gunicorn 0.14.5 2012-07-12 14:04:30 [5997] [ERROR] Connection in use: ('127.0.0.1', 8001) 2012-07-12 14:04:30 [5997] [ERROR] Retrying in 1 second. 2012-07-12 14:04:31 [5997] [ERROR] Connection in use: ('127.0.0.1', 8001) 2012-07-12 14:04:31 [5997] [ERROR] Retrying in 1 second. 2012-07-12 14:04:32 [5997] [ERROR] Connection […]