Устанавливаем django:
sudo apt-get install python-django |
Проверяем корректность установки, следующая команда должна показать версию:
python -c "import django; print django.VERSION;" |
Устанавливаем Apache и mod_wsgi:
sudo apt-get install apache2 libapache2-mod-wsgi |
Устанавливаем MySQL:
sudo apt-get install mysql-server python-mysqldb |
Создаем директорию для наших проектов:
mkdir -p /home/django-projects |
Создаем проект myproject:
django-admin startproject myproject |
Создаем необходимые директории.
Для настроек wsgi:
sudo mkdir -p /home/django-project/myproject/deploy |
Директория для статики:
sudo mkdir -p /home/django-project/myproject/media |
Директория для логов:
sudo mkdir -p /home/django-project/myproject/logs |
Корректируем название модуля для корректного импорта:
|
Для изоляции кода проекта от остальной системы (в целях безопасности), добавим в систему нового пользователя от имени которого будет работать код проекта:
Создаем системную группу:
|
sudo adduser --quiet --system --ingroup dw \ |
sudo chown dw:www-data -R /home/django-project/myproject |
Изменяем права доступа к проекту:
|
Чтобы привязать наш проект к URL-адресу, необходимо добавить и настроить виртуальный хост в Apache. Сначала создадим файл:
sudo –u dw touch /home/django_project/myproject/deploy/myproject.com |
И добавим в него следующий код:
<VirtualHost *:80> # Логи # wsgi-обработчик (см. ниже) # Параметры запуска wsgi home=/home/django_project/myproject/media/ \ display-name=apache-dw-wsgi
# Статические файлы django-админки "/usr/lib/pymodules/python2.7/django/contrib/admin/media/"
# Статические файлы проекта </VirtualHost> |
Теперь нужно создать wsgi-обработчик. Создаем файл:
sudo –u dw touch /home/django_project/myproject/deploy/django.wsgi |
И добавляем в него следующее содержимое:
#/usr/bin/python import os, sys path = '/home/django_project' os.environ['DJANGO_SETTINGS_MODULE'] = 'settings' import django.core.handlers.wsgi |
Теперь можно включить наш виртуальный хост. Добавим ссылку в список доступных хостов:
|
Включим наш виртуальный хост:
a2ensite myproject.com |
И перезапустим Apache:
/etc/init.d/apache2 restart |
Добавляем наш адрес в hosts и пытаемся открыть в браузере. Если все в норме то отобразится следующее:
|
Убедившись что Django работает можем перейти к созданию базы данных. Заходим в MySQL под root’ом:
|
Создаем новую базу данных:
|
Создаем пользователя:
|
Вместо 'passw' подставляем свой пароль.
И даем новому пользователю доступ к базе:
|
После этого нужно прописать новую базу и пользователя в файл настроек проекта settings.py:
DATABASES = { |
В этом же файле нужно прописать пути к файлам основного проекта и админки:
# URL that handles the media served from MEDIA_ROOT. Make sure to use a # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a |
Теперь можно дать команду для создания в базе данных основных таблиц:
|
Теперь Django настроен полностью. Чтобы получить доступ к интерфейсу администрирования в файле urls.py раскоментируем следующие строки:
# Uncomment the next two lines to enable the admin: urlpatterns = patterns('', # Uncomment the admin/doc line below to enable admin documentation: # Uncomment the next line to enable the admin: |
И в браузере набираем “hhtp://myproject.com/admin”. Если появилась форма авторизации значит все работает.
Комментариев нет:
Отправить комментарий