Nginx Django
Версія від 21:17, 15 квітня 2009, створена 91.124.54.161 (обговорення) (Created page with '== Налаштування зв'язки Django та nginx == Операційна система Debian. ---- 1. Встановлюємо все необхідне: apt-get in...')
Налаштування зв'язки Django та nginx
Операційна система Debian.
1. Встановлюємо все необхідне:
apt-get install python nginx dajngo flux python-mysqldb python-imaging
2. Настроюємо nginx (/etc/nginx). Ставорюємо файл /etc/nginx/django_fcgi_params для передачі параметрів у Django
fastcgi_pass_header Authorization; fastcgi_intercept_errors off; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param QUERY_STRING $query_string; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param SERVER_NAME $server_name; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param REMOTE_USER $remote_user; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_SOFTWARE "nginx"; fastcgi_param GATEWAY_INTERFACE "CGI/1.1";
3. У файл /etc/nginx/nginx.conf добавляємо у секцію http {}
log_format main '$remote_addr - $remote_user [$time_local] '
'"$request" $status $bytes_sent $body_bytes_sent '
'"$http_referer" "$http_user_agent"'
'"$gzip_ratio" "$uid_set" "$uid_got"';
4. Добавляємо в каталог /etc/nginx/sites-available свої налаштування (файл Django):
# Django project
server {
listen 80;
server_name energy-service.com;
error_log /var/www/energy-service/error_log info;
location / {
fastcgi_pass unix:/var/www/energy-service/server.sock;
# fastcgi_pass 127.0.0.1:8000;
include django_fcgi_params;
access_log /var/www/energy-service/logs/django.log main;
}
# location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|bmp|js)$ {
# root /var/www/energy-service/site;
# access_log off;
# expires 30d;
# }
location /sm {
root /var/www/energy-service/site;
access_log off;
}
location /media {
root /var/lib/python-support/python2.5/django/contrib/admin;
access_log off;
}
}