Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Настраиваем Python с WSGI
WSGI является протоколом, который связывает HTTP-сервер и приложение на Python.
На данный момент уже есть большое количество серверов и приложений, работающих
по этому протоколу, что позволяет использовать их как взаимозаменяемые
компоненты. В примере я подключу к nginx известный трекер ошибок Trac (
wsgi_var REQUEST_METHOD $request_method;
wsgi_var QUERY_STRING $query_string;
wsgi_var CONTENT_TYPE $content_type;
wsgi_var CONTENT_LENGTH $content_length;
wsgi_var SERVER_NAME $server_name;
wsgi_var SERVER_PORT $server_port;
wsgi_var SERVER_PROTOCOL $server_protocol;
wsgi_var REQUEST_URI $request_uri;
wsgi_var DOCUMENT_URI $document_uri;
wsgi_var DOCUMENT_ROOT $document_root;
wsgi_var SERVER_SOFTWARE $nginx_version;
wsgi_var REMOTE_ADDR $remote_addr;
wsgi_var REMOTE_PORT $remote_port;
wsgi_var SERVER_ADDR $server_addr;
wsgi_var REMOTE_USER $remote_user;
После этого необходимо добавить в /etc/nginx/nginx.conf в секцию http опции:
wsgi_temp_path /var/lib/nginx/wsgi;
include /etc/nginx/wsgi_params;
Теперь сделаем WSGI-скрипт для подключения Trac и положим его как /home/www/wsgi.example.ru/wsgi.py, не забывая сделать исполняемым:
#! /usr/bin/env python2.4
import os
os.environ['TRAC_ENV'] = "/home/www/wsgi.example.ru/trac"
os.environ['PYTHON_EGG_CACHE'] = "/var/tmp"
import trac.web.main
application = trac.web.main.dispatch_request
И последний момент – конфигурация сайта:
server {
listen 80;
server_name wsgi.example.ru;