Last modified 2 years ago
Установка движка
Для установки необходимо выполнить следующие действия:
- Установить Django.
- Настроить соответствующим образом веб-сервер (например: http://docs.djangoproject.com/en/dev/howto/deployment/fastcgi/lighttpd)
- Выгрузить проект в рабочий каталог:
svn co svn://old.webii.ru/wallp
- Создать роль и базу данных PostgreSQL (или MySQL):
su postgres createuser wallp --no-superuser --no-createdb --no-createrole --login --pwprompt --encrypted createdb --owner=wallp --encoding=utf-8 wallp --template=template0
- Создать файл с настройками local_settings.py следующего содержания (пример для postgresql):
# local settings. DATABASE_ENGINE = 'postgresql_psycopg2' # '', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. DATABASE_NAME = 'wallp' # Or path to database file if using sqlite3. DATABASE_USER = 'wallp' # Not used with sqlite3. DATABASE_PASSWORD = 'password' # Not used with sqlite3. DATABASE_HOST = 'localhost' # Set to empty string for localhost. Not used with sqlite3. DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3. MEDIA_ROOT = '/var/www/user/wallp/media/site.ru/' MEDIA_URL='http://site.ru/' TEMPLATE_DIRS = ( '/var/www/user/wallp/templates/site.ru/' ) ABS_ROOT = '/var/www/user/wallp/' ROOT_URLCONF = 'wallp.urls' ADMIN_MEDIA_PREFIX = '/media2/' DEBUG = True
- Создать root-тему (пример для PostgreSQL):
INSERT INTO wall_theme( id, "name", parent_theme_id, active, publication_date, url) VALUES (0, 'root', 0, TRUE, '2009-04-01', '/');
- Если вы хотите чтобы пользователи могли загружать картинки и комментировать анонимно - в админке Django создайте пользователя Anonymous.
Пример конфигурации Apache2 (mod_python) + nginx в качестве reverse proxy:
nginx:
server { proxy_set_header X-Forwarded-For $remote_addr;
listen 80;
server_name site.ru www.site.ru;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
location ~* \.(jpg|gif|png|css|js)$ {
root /var/www/user/wallp/media/site.ru/; # тут адрес для статики
}
}
Apache:
<Directory /var/www/user/wallp>
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE wallp.settings
PythonPath "['/var/www/user/', '/var/www/user/wallp'] + sys.path"
PythonDebug On
</Directory>
<VirtualHost 127.0.0.1:8080>
ServerName site.ru
DocumentRoot /var/www/user/wallp
CustomLog /var/www/httpd-logs/site.ru.access.log combined
ErrorLog /var/www/httpd-logs/site.ru.error.log
ServerAlias www.site.ru
ServerAdmin user@site.ru
</VirtualHost>
