Установка Django на хостинге Beget

Основной текст заметки

cd ~ mkdir -p ~/.beget/tmp cd ~/.beget/tmp/ wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tgz tar xf Python-3.6.7.tar.xz && cd Python-3.6.7

ssh localhost -p222
cd ~/.beget/tmp/Python-3.6.7/

./configure --prefix $HOME/.local
make -j33 && make install

python3 -V
pip3 -V

pip3 install django --user --ignore-installed
pip3 install django-debug-toolbar
pip3 install django-mptt-admin
pip3 install easy-thumbnails
pip3 install mysqlclient
pip3 install django-honeypot
pip3 install transliterate
pip3 install django-crispy-forms
pip3 install django-adminlte2
pip3 install django-tinymce4-lite
pip3 install django-filebrowser-no-grappelli
pip3 install django-embed-video
pip3 install django-ckeditor

exit

cd ~
pwd

получаем [PATH] [PATH] - путь к корню [PROJECT] - проект [SITE] - папка сайта

идем в File Manager и там устанавливаем внутри папки .local общий доступ

в папке public_html

touch .htaccess

cat <<EOT >.htaccess
PassengerEnabled On
PassengerPython [PATH]/.local/bin/python3
EOT

в папке файла

touch passenger_wsgi.py

cat >passenger_wsgi.py <<EOT
# -*- coding: utf-8 -*-
import os, sys
INTERP='[PATH]/.local/bin/python3.6'
sys.path.insert(0, '[PATH]/[SITE]/[PROJECT]')
sys.path.insert(1, '[PATH]/.local/lib/python3.6/site-packages')
os.environ['DJANGO_SETTINGS_MODULE'] = '[PROJECT].settings'
from django.core.wsgi import get_wsgi_application
from django.contrib.staticfiles.handlers import StaticFilesHandler
application = StaticFilesHandler(get_wsgi_application())
EOT

django-admin startproject [PROJECT]

mkdir tmp
touch tmp/ restart.txt

в папке проекта создать папки media и static

в папке public_html создать линки

ln -s ../[PROJECT]/media ./media
ln -s ../[PROJECT]/static ./static

Заметка написана: 14.11.2018

Теги заметки: Beget, Django, Linux