$SERVER["socket"] == "0.0.0.0:8888" {
server.document-root = "/srv/www/django/htdocs"
url.access-deny = ( "~", ".inc", ".svn/" )
fastcgi.server = (
"/dispatch.fcgi" => (
"main" => (
"socket" => "/srv/www/django/run/fcgi.sock",
"bin-path" => "/srv/www/django/manage.py runfcgi --pythonpath=/srv/www/django --settings=djangoapp.settings-production method=threaded",
"max-procs" => 2,
"check-local" => "disable",
"fix-root-scriptname" => "enable",
)
),
)
alias.url = ( "/static" => "/srv/www/django/htdocs", )
url.rewrite-once = (
"^(/static.*)$" => "$1",
"^/favicon\.ico$" => "/static/favicon.ico",
"^(/.*)$" => "/dispatch.fcgi$1"
)
}
Предполагается, что проект лежит в /srv/www/django/, где для него существует рабочая версия настроек в файле settings-production.py. lighttpd сам запустит fcgi-сервер в количестве max-procs экземпляров. Опция check-local необходима для того, чтобы отключить проверку существования файлов на локальной машине, которую делает lighttpd; так как запрашиваемые URL существуют лишь в логике django, а не в файловой системе.
Для правильной работы тегов типа {% url %} необходимо добавить строчку FORCE_SCRIPT_NAME = '' в настройки проекта написанного на django, иначе ко всем ссылкам в начало будет добавляться название /dispatch.fcgi.
Комментариев нет:
Отправить комментарий