ValueHost рд╕рд░реНрд╡рд░ рдкрд░ Django

рдирдорд╕реНрдХрд╛рд░, рдЖрдЬ рд╣рдо рдЖрдкрдХреЛ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ ValueHost рд╕рд░реНрд╡рд░ рдкрд░ Django рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП ред

рдЫрд╡рд┐

Django CMS рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Django рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

рд╡реЗрдм рд╕рд░реНрд╡рд░ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рддреИрдпрд╛рд░реА

рдкрд╣рд▓реА рдЪреАрдЬрд╝ рдЬреЛ рд╣рдореЗрдВ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рд╡рд╣ рд╣реИ SSH рддрдХ рдкрд╣реБрдБрдЪрдирд╛:

рдХрдВрдЯреНрд░реЛрд▓ рдкреИрдирд▓ -> рдПрд╕рдПрд╕рдПрдЪ -> рдкрд╛рд╕рд╡рд░реНрдб рдФрд░ рдСрди рдлреНрд▓реИрдЧ рд╕реЗрдЯ рдХрд░реЗрдВред (рдпрд╛ рдЖрдИрдкреА рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд)

рдЕрдЧрд▓рд╛, рд╣рдо рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдЖрдзрд╛рд░ рдмрдирд╛рддреЗ рд╣реИрдВ:

рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ -> рдбреЗрдЯрд╛рдмреЗрд╕ -> MySQL рдпрд╛ PgSQL рд╕реЗ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП
рд╣рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ рдХрд╛ рдирд╛рдо, рдкрд╛рд╕рд╡рд░реНрдб, рдкреНрд░рдХрд╛рд░ рдФрд░ рдкрддрд╛ рдпрд╛рдж рд╣реИред

рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рд╕рд░реНрд╡рд░ рдмрдирд╛рдПрдБ:

рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ -> рд╡реЗрдм рд╕рд░реНрд╡рд░ -> рдирдпрд╛ рдмрдирд╛рдПрдБ:
рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ -> рдкрд╛рдпрдерди (mod_wsgi)
рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ -> django_data
рд╕рд░реНрд╡рд░ рдХрд╛ рдирд╛рдо -> mydomain.ru
рд╕реНрдереИрддрд┐рдХ рд╕рд╛рдордЧреНрд░реА рдЕрдкрд▓реЛрдб рддреНрд╡рд░рдХ рдЪрд╛рд▓реВ рдХрд░реЗрдВ -> рдкрд░
.htaccess -> рдкрд░
рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ

рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реНрдерд╛рдкрдирд╛

рдЬрдмрдХрд┐ рдирдП рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд▓рд╛рдЧреВ рд╣реИрдВ (рдпрд╣ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд▓реЗрддрд╛ рд╣реИ
рдЖрдзреЗ рдШрдВрдЯреЗ, рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ -> рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рд╣реЛрдо ), рд╕рд░реНрд╡рд░ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВред

рдХрд┐рд╕реА рднреА SSH рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╕рд░реНрд╡рд░ рдкрд░ рдЬрд╛рдПрдВ:

ssh my_admin_login@mydomain.ru

рдЬрд╣рд╛рдВ,

my_admin_login - рдЖрдкрдХрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд▓реЙрдЧрд┐рди
mydomain.ru - рдЖрдкрдХрд╛ рдбреЛрдореЗрди рдпрд╛ рд╕рд░реНрд╡рд░ рддрдХрдиреАрдХреА рдкрддрд╛

рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж (рд╣рдордиреЗ рдЗрд╕реЗ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ), рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░реЗрдВ
рдЖрджреЗрд╢:

# django-admin.py startproject django_app

рдЬрд╣рд╛рдВ,

django_app - Django рдЖрд╡реЗрджрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛

Django CMS рд╡рд┐рддрд░рдг рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ:

#cp -R /usr/local/lib/python2.6/site-packages/django_cms-2.0.2-py2.6.egg/*~/django_app

рдпрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЕрдирдкреИрдХ рдХрд░реЗрдВ
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ ~ / django_app

рд╡рд┐рддрд░рдг рдХрд┐рдЯ рд╕реЗ рдЙрджрд╛рд╣рд░рдг CMS рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ:

#cp -R ~ / django_app / рдЙрджрд╛рд╣рд░рдг / * ~ / django_app /

рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ
~ / django_app / settings.py :

DATABASE_ENGINE = рдбреЗрдЯрд╛рдмреЗрд╕ рдкреНрд░рдХрд╛рд░: mysql рдпрд╛ postgresql
DATABASE_NAME = рдЖрдзрд╛рд░ рдирд╛рдо
DATABASE_NAME = рдЖрдзрд╛рд░ рдирд╛рдо
рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рддреЗ рд╕рдордп DATABASE_USER = рдкрд╛рд╕рд╡рд░реНрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛
DATABASE_HOST = рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд░реНрд╡рд░ рдкрддрд╛
MEDIA_ROOT = os.path.join (PROJECT_DIR, 'рд╕реЗрдореА / рдореАрдбрд┐рдпрд╛ /')
ADMIN_MEDIA_PREFIX = '/ media_admin /'

  INSTALLED_APP рд▓рд╛рдЗрди рдкрд░ рдЯрд┐рдкреНрдкрдгреА:

'рджрдХреНрд╖рд┐рдг',

рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

# 'рджрдХреНрд╖рд┐рдг'

рд╣рдо рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ рдФрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

#python ~ / django_app / manage.py syncdb

рд╣рдо рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╣реИрдВ:

рдЖрдкрдиреЗ рд╕рд┐рд░реНрдл Django рдХреА рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдгрд╛рд▓реА рд╕реНрдерд╛рдкрд┐рдд рдХреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╕реБрдкрд░рд╕рд░реНрд╕ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрднреА рдПрдХ рдмрдирд╛рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ? (рд╣рд╛рдБ / рдирд╣реАрдВ): рд╣рд╛рдБ
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо ('рдЙрджрд╛рд╣рд░рдг' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд╛рд▓реА рдЫреЛрдбрд╝реЗрдВ): рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд▓реЙрдЧрд┐рди
рдИ-рдореЗрд▓ рдкрддрд╛: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдИрдореЗрд▓
рдкрд╛рд╕рд╡рд░реНрдб: рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд╛рд╕рд╡рд░реНрдб
рдкрд╛рд╕рд╡рд░реНрдб (рдлрд┐рд░ рд╕реЗ): рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд╣рд▓реЗ рд╣реА рдШрд░ рдореЗрдВ рд▓рд╛рдЧреВ рд╣реЛ рдЪреБрдХреА рд╣реИрдВ
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдиреЗ django_data рд╡реЗрдм рд╕рд░реНрд╡рд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ ~ / django_data / index.wsgi рд╣реИрдВрдбрд▓рд░ рдмрдирд╛рдПрдБ
рд╕рд╛рдордЧреНрд░реА:

import os, sys root_path = os.path.abspath(os.path.split(__file__)[0])
sys.path.append(root_path+'/..') sys.path.append(root_path) os.environ['DJANGO_SETTINGS_MODULE'] = 'django_app.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()


рд╣рдо рд╣реИрдВрдбрд▓рд░ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рддреЗ рд╣реИрдВ:

#chmod 500 ~ / django_data / index.wsgi

рд╣рдо рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ django рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдорджрдж ~ / django_data / .htaccess

Options +FollowSymLinks
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.wsgi/$1 [L,QSA]


рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдХреЗ рд▓рд┐рдП рдореАрдбрд┐рдпрд╛ рд╕рд╛рдордЧреНрд░реА рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ:

#cp -R
/usr/local/lib/python2.6/site-packages/django/contrib/admin/media
~ / django_data / media_admin

рд╕рдм рдХреБрдЫ, рд╕реАрдПрдордПрд╕ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рд╕рд░реНрд╡рд░ рдирд╛рдо рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкрддреЗ рдкрд░ рдЬрд╛рдПрдВ рдФрд░
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рдЗрди рдХрд░реЗрдВред

рдЕрддрд┐рд░рд┐рдХреНрдд рдореЙрдбреНрдпреВрд▓ рдХреА рд╕реНрдерд╛рдкрдирд╛

рдпрджрд┐ рдЖрдкрдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдЬрдЧрд░ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ рд╕реЗ рдСрдирд▓рд╛рдЗрди рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВ, рдФрд░ рд╣рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

Source: https://habr.com/ru/post/In104998/


All Articles