Django рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдПрдХ * nix рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред рдореИрдВ рдореВрд▓ рд╣реЛрдиреЗ рдХрд╛ рдирд╛рдЯрдХ рдирд╣реАрдВ рдХрд░реВрдБрдЧрд╛, рдмрд╕
рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ-рд╕рдмрд╕реЗ-рд╕рдмрд╕реЗ рд╕рд╛рдЭрд╛ рдХрд░реВрдБрдЧрд╛ред
рдкрд░рд┐рдЪрдпрд╛рддреНрдордХ рд╕реНрдерд┐рддрд┐
рдкреГрд╖реНрдарднреВрдорд┐:
- рдПрдХ рдХреНрд▓рд╛рдЗрдВрдЯ (рдЧреНрд░рд╛рд╣рдХ) - рд╕рд░реНрд╡рд░ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ред
- рд╕рднреА рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рд╣реИрдВред
- Virtualenv рдЕрдЪреНрдЫрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
- Ftp рдмреБрд░рд╛рдИ рд╣реИ, рд╣рдо рдЖрдзреБрдирд┐рдХ рд╕рд╛рдзрдиреЛрдВ (sftp) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
- рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрдо рд╕реЗ рдХрдо рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рдкреНрд░рдпреБрдХреНрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░:
- nginx
- uwsgi
- рдХреНрд░реЙрди
- virtualenv
- рдЕрдзрд┐рднрд╛рд░рд┐рдд
рдФрд░ рдиреЗрдлрд╝рд┐рдЧрд╝ рдЗрдзрд░-рдЙрдзрд░ рдХреА рдЕрдлрд╡рд╛рд╣
рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / рдЧреНрд░рд╛рд╣рдХ / рдЧреНрд░рд╛рд╣рдХ рднреА рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдлрд╝рд╛рдЗрд▓ рдЯреНрд░реА рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХреБрдЫ рднреА рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ), рдЕрд░реНрдерд╛рддреНред тАЬрд▓рдЧрднрдЧ рдмрд╛рд╣рд░реА рд▓реЛрдЧред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ рдХреЗ рдбрд┐рд╕реНрдХ рдкрд░ рдЪрд╛рд░реЛрдВ рдУрд░ рдЕрдлрд╡рд╛рд╣ рдлреИрд▓рд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред рдкрд╣рд▓реА рдирдЬрд╝рд░ рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдиреЗ рд╣реЛрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдЖрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдЗрд╕ рдЖрд╡реЗрдЧ рдХреЗ рдЖрдЧреЗ рдирд╣реАрдВ рдЭреБрдХрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдШрд░ рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд░рд╛рдЬрд╛ рдФрд░ рднрдЧрд╡рд╛рди рд╣реИ, рдФрд░ рдПрдХ рдЧрд▓рдд рдХрджрдо рд╣реИ
рдФрд░ рдЖрдк рдкрд┐рддрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЖрдЗрдП рдЯреНрд░рд┐рдХ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрджрд╛рдиреБрдХреНрд░рдо рдмрдирд╛рдПрдВ:
/home /client -- /client -- "client" /another_project /project /www-root /static /app1 /app2 manage.py settings.py django_wsgi.py ... /var /log -- nginx'a, logrotate /tmp -- chmod 770 -- /run -- /client2 -- /client3 --
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ "рдХреНрд▓рд╛рдЗрдВрдЯ" рдХреА рд╣реЛрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрдзрд┐рдХрд╛рд░ рдХреНрд▓рд╛рдЗрдВрдЯ рд╣реИ: рдХреНрд▓рд╛рдЗрдВрдЯ, рдмрд╛рдХреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдВ, рдЬрдм рддрдХ рдХрд┐ рдЕрдиреНрдпрдерд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рди рд╣реЛ, рд░реВрдЯ: рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рдХреИрдореЛрдб 750, рдХреНрд░рдорд╢рдГред рдЖрдкрдХреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рдореВрд╣ рдореЗрдВ nginx рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рддрд╛рдХрд┐ nginx рдХреЗ рдкрд╛рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЕрдВрджрд░ рд╕реНрдерд┐рд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛред рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рднреА, рдПрдХ sftponly рд╕рдореВрд╣ рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдХреНрд▓рд╛рдЗрдВрдЯ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВред Sshd config (/ etc / ssh / sshd_config) рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝реЗрдВ:
Match Group sftponly X11Forwarding no AllowAgentForwarding no AllowTcpForwarding no ChrootDirectory /home/%u ForceCommand internal-sftp
рдФрд░ рд▓рд╛рдЗрди
Subsystem sftp /usr/lib/misc/sftp-server
рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВ
Subsystem sftp internal-sftp
рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдорд┐рд▓рддреА рд╣реИ рдЬрдм рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ sftp (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, wincp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рд╕рд░реНрд╡рд░ рдкрд░ рд▓реЙрдЧ рдЗрди рдХрд░рддрд╛ рд╣реИ, рдЕрдкрдиреЗ рд╣реЛрдо рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рд╕реНрддрд░ рддрдХ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдШреВрдо рд╕рдХрддрд╛ рд╣реИ, рд▓реЙрдЧ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡рд╣ рдХрд┐рд╕реА рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдпрд╛ рд╣рдЯрд╛рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИ (chmod 750 рд╣рд╛рд▓рд╛рдВрдХрд┐)ред
nginx - рдЗрд╕ рд╢рдмреНрдж рдореЗрдВ рдХрд┐рддрдирд╛ рд╣реИ
рд╕реНрдЯреИрдЯрд┐рдХ рдХрдВрдЯреЗрдВрдЯ рдбрд┐рд▓реАрд╡рд░ рдХрд░рдиреЗ рдФрд░ рдбрд╛рдпрдирд╛рдорд┐рдХ рдЬреЗрдирд░реЗрд╢рди рд╕реЗ рдЬреБрдбрд╝реЗ рдорд╕рд▓реЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Nginx рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдмреЗрд╣рддрд░ http- рд╕рд░реНрд╡рд░ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирдЧреНрдиреЗрдХреНрд╕ рдХреЛ рдпреВрд╡реЗрд╕реА-рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рде рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрддрд╛ рд╣реИ)ред рдЬрдм рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ (рдХрдо рд╕реЗ рдХрдо gentoo рдореЗрдВ) рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ nginx / etc / nginx рдореЗрдВ рдЗрд╕рдХреЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдкрд░рдВрдкрд░рд╛ рдХреЛ рдирд╣реАрдВ рддреЛрдбрд╝реЗрдВрдЧреЗ, рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред рдореБрдЦреНрдп nginx'a config (/etc/nginx/nginx.conf) рдореЗрдВ, http рдЕрдиреБрднрд╛рдЧ рдХреЗ рдЕрдВрдд рдореЗрдВ рд▓рд╛рдЗрди рдЬреЛрдбрд╝реЗрдВ
include /etc/nginx/vhost.d/*.conf ;
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреНрд░рддрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ (/etc/nginx/vhost.d/project.conf) рд╣реЛ рд╕рдХрддреА рд╣реИред
рдХреБрдЫ рдЗрд╕ рддрд░рд╣:
# Uwsgi # рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ nginx рджреНрд╡рд╛рд░рд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХреА рдЬрд╛рдПрдЧреА, рд╣рд╛рд▓рд╛рдБрдХрд┐, nust start script (рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреАрдЪреЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ) рдЗрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЕрдкрдиреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рдорд╛рдирддреЗ рд╣реБрдП рджреЗрдЦрддреА рд╣реИред
Nust - Nginx Uwsgi STarter
рдПрдХ рдмрд╛рд░, рдЬрдм uwsgi рдмрд╕ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд▓рдЧрд╛ рдерд╛, рдпрд╣ рдЬрд╛рдирддрд╛ рдерд╛ рдХрд┐ рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдХреИрд╕реЗ рдЧрд┐рд░рдирд╛ рд╣реИ, рдЗрд╕рдореЗрдВ "рд╢рд╛рд╣реА" рд╢рд╛рд╕рди рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдорд╛рдВрдЧ рдХреЗ рдирд░рдХ рдореЗрдВ рдерд╛ - рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЬрд▓реНрджрдмрд╛рдЬреА рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╣реА рдХрд╛рд░рдг рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИ - рд╡рд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рддреЛ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИред
рдХреНрд░рд╛рдЙрди рдкрд░ рдирд╕реНрдЯ рдЪрд▓рддрд╛ рд╣реИ (рдХреНрд░реЙрд╕реНрдЯреЗрдм-рдИ)
*/5 * * * * nust -s -c /etc/nust.conf
рдЖрдкрдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рдеред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджреЛ рдЦрдВрдб рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкрд╣рд▓рд╛ рд╕реАрдзреЗ nust'y рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдФрд░ рдЗрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░рд╛рд╕реНрддреЛрдВ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ - uwsgi рдХреЗ рд▓рд┐рдП рдЪреВрдХред
[nust] pstree = /usr/bin/pstree vhosts = /etc/nginx/vhost.d/*.conf uwsgi = /usr/bin/uwsgi uwsgi_def_args = --ini=/etc/nust.conf dbdir = /var/run kill = /bin/kill -s TERM kill_k9= /bin/kill -s KILL [uwsgi] master= disable-logging= vacuum= logfile-chown= chmod-socket=666 catch-exceptions= memory-report=
рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдирд╕реНрдЯрд╕реНрдЯ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
sudo pip install nust
"рдШреБрдВрдШрд░рд╛рд▓реЗ рдЯрд┐рдкреНрдкрдгреА" # uwsgi # рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ nginx'a рдХреЙрдиреНрдлрд┐рдЧрд░ рдореЗрдВ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
- рд╢реНрд░рдорд┐рдХ - рд╕рдорд╛рдирд╛рдВрддрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреА рд╕рдВрдЦреНрдпрд╛
- MODULE - рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЬрдЧрд░ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдирд╛рдо (django_wsgi.py)
- PRJ - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд╛рдо
- PID - рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдЯреНрд░реА рдХреА рдкреАрдЖрдИрдбреА тАЛтАЛрдлрд╝рд╛рдЗрд▓ (var / run / uwsgi.pid)
- рд▓реЙрдЧ - uwsgi рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрде (var / log / uwsgi.log)
- HARAKIRI - рдЕрдзрд┐рдХрддрдо рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рд╕рдордп, рд╕реЗрдХрдВрдбред
- MAX_REQ - рд╕рдВрд╕рд╛рдзрд┐рдд рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
рд▓реЗрдХрд┐рди рдЗрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
- USER - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
- рдШрд░ - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдШрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (USER рдирд╣реАрдВ рд╣реИ!)
- VE - рдЖрднрд╛рд╕реА рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рд░рд╛рд╕реНрддрд╛ (virtualenv рдХрд╛ рдкрд░рд┐рдгрд╛рдо)
- рд╕реЙрдХреЗрдЯ - рдЬрд╣рд╛рдВ рдПрдХ рд╕реЙрдХреЗрдЯ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЕрдкрд╕реНрдЯреНрд░реАрдо рд╕реЗрдХреНрд╢рди рд╕реЗ рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдкрде рддреАрди рддрд░реАрдХреЛрдВ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
- рдирд┐рд░рдкреЗрдХреНрд╖ рдкрде рдПрдХ рд╕реНрд▓реЗрд╢ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ
(/ tmp) - рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдШрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдкрде
(~ / gde-to / tam /) - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдШрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдкрде
(var / run / uwsgi.pid)
Uwsgi рдХреЗ рддрд╣рдд рдХрд┐рд╕реА рднреА рдЕрдЬрдЧрд░ рдХреЛрдб рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рддрдерд╛рдХрдерд┐рдд рдореЙрдбреНрдпреВрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред Django рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХреЛрдб
django_wsgi.py рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ:
рд╕рд┐рд╕реНрдЯрдо рдХреА рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд▓рд┐рдкрд┐рдпреЛрдВ рдореЗрдВ рдирд╕реНрдЯ рдХреЗ рд▓реЙрдиреНрдЪ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХреНрд░рд╛рдЙрди рдкрд░ рд╕рдордп-рд╕рдордп рдкрд░ рдирд╕реНрдЯ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд┐рд░реНрдл рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд╕реНрдЯ рдЙрдирдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрддрд╛ рд╣реИ (рдХреНрд░реИрд╢, рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ), рд╕рд╛рде рд╣реА рд╕рд╛рде nginx рд╡рд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рднреАред рдпрджрд┐ рд╡рд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдПрдХ рдЖрдлреНрдЯрд░рд╡рд░реНрдб рдХреЗ рдмрдЬрд╛рдп
рдЦреИрд░, рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореИрдВ рдХреБрдЫ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рднреВрд▓ рдЧрдпрд╛ рд╣реВрдВред рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред