Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » nginx + django (fastcgi) проблемы с отображением media [RSS Feed]

#1 Дек. 9, 2009 13:56:29

kirill
От:
Зарегистрирован: 2008-08-13
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

настройки Nginx

server {
server_name djangosite;

location / {
root /home/www/django/testsite;
index index.html index.htm;
fastcgi_pass 127.0.0.1:8881;

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 REMOTE_ADDR $remote_addr;
fastcgi_pass_header Authorization;
fastcgi_intercept_errors off;
}

location ^~ /media {
root /home/www/django/testsite/media/;
}
}
settings.py

# Django settings for testsite project.

DEBUG = True
TEMPLATE_DEBUG = DEBUG

ADMINS = (
# ('Your Name', 'your_email@domain.com'),
)

MANAGERS = ADMINS

DATABASE_ENGINE = '' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = '' # Or path to database file if using sqlite3.
DATABASE_USER = '' # Not used with sqlite3.
DATABASE_PASSWORD = '' # Not used with sqlite3.
DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3.

# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# If running in a Windows environment this must be set to the same as your
# system time zone.
TIME_ZONE = 'America/Chicago'

# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
LANGUAGE_CODE = 'en-us'

SITE_ID = 1

# If you set this to False, Django will make some optimizations so as not
# to load the internationalization machinery.
USE_I18N = True

# Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
MEDIA_ROOT = '/home/www/django/testsite/media/'

# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
# Examples: "http://media.lawrence.com", "http://example.com/media/"
MEDIA_URL = 'http://djangosite/media/'

# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
# trailing slash.
# Examples: "http://foo.com/media/", "/media/".
ADMIN_MEDIA_PREFIX = '/media/'

# Make this unique, and don't share it with anybody.
SECRET_KEY = '(#w9mvhiqhp#&v*f9g)m6p4to#-%r#yltnwfvpb0w_!z%r%$3z'

# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.load_template_source',
'django.template.loaders.app_directories.load_template_source',
# 'django.template.loaders.eggs.load_template_source',
)

MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
)

ROOT_URLCONF = 'testsite.urls'

TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
)
все работает, но при обращении к файлам www…./media/img.jpg 404 ошибка, как настроить папку чтоб отдавать статические файлы ?



Офлайн

#2 Дек. 9, 2009 14:15:10

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

kirill
location ^~ /media {
root /home/www/django/testsite/media/;
}
Используя директиву root не надо указывать media в её пути. А указывая, на alias применять.

Вопрос не по Джанге по сути;-)



Офлайн

#3 Дек. 9, 2009 14:18:41

kirill
От:
Зарегистрирован: 2008-08-13
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

Спасибо, затупил )



Офлайн

#4 Дек. 9, 2009 14:23:37

poltergeist
От:
Зарегистрирован: 2007-02-28
Сообщения: 522
Репутация: +  0  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

Попробуй так:

location /media {
alias /home/www/django/testsite/media;
}
А вот этот участок в “location /”:
root   /home/www/django/testsite;
index index.html index.htm;
… уберите от греха подальше.



Офлайн

#5 Дек. 10, 2009 14:23:57

evteam
От:
Зарегистрирован: 2009-12-10
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

Офлайн

#6 Дек. 10, 2009 14:30:52

kirill
От:
Зарегистрирован: 2008-08-13
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

nginx + django (fastcgi) проблемы с отображением media

evteam
Вот небольшой туториал по теме:
Установка и настройка Django, Nginx через FastCGI (flup) в Debian / Ubuntu
Спасибо, с этим я уже разобрался, сейчас меня терзают вопросы по кастомизации админки, тк автогенерируемые не всегда то что нужно )



Офлайн

  • Начало
  • » Django
  • » nginx + django (fastcgi) проблемы с отображением media[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version