"Ubuntu, Apache2, python3, django, mod wsgi"-ны өөр хувилбарууд
Дусал нэвтэрхий толь-с
(Хуудас үүсгэв: "[Ubuntu18.04 + Apache2.4 + Django2.1 + Python3.6 + wsgi + virtualenv] == Requirement package install == <pre> sudo apt-get update sudo apt-get install python3-pip...") |
|||
(Хэрэглэгчид 3 дундын хувилбарууд харагдахгүй) | |||
18-р мөр: | 18-р мөр: | ||
<pre> | <pre> | ||
cd /var/www/domain.com/web | cd /var/www/domain.com/web | ||
+ | |||
+ | # upload project or create new: | ||
python3 manage.py startproject firstproject | python3 manage.py startproject firstproject | ||
cd firstproject | cd firstproject | ||
− | + | python3 -m venv firstprojenv | |
source firstprojenv/bin/activate | source firstprojenv/bin/activate | ||
pip3 install django | pip3 install django | ||
cd firstproject | cd firstproject | ||
− | # | + | |
+ | # If creating new: | ||
python3 ./manage.py migrate | python3 ./manage.py migrate | ||
python3 ./manage.py createsuperuser | python3 ./manage.py createsuperuser | ||
33-р мөр: | 36-р мөр: | ||
== configure wsgi.py == | == configure wsgi.py == | ||
+ | Заавал хийхгүй байсан ч болох байх. | ||
+ | <pre> | ||
import os | import os | ||
import site | import site | ||
import sys | import sys | ||
− | site.addsitedir('/ | + | site.addsitedir('/var/www/domain.com/web/firstprojenv/lib/python3.6/site-packages') |
− | sys.path.append('/ | + | sys.path.append('/var/www/domain.com/web/firstproject') |
− | |||
+ | </pre> | ||
== Configure Apache == | == Configure Apache == | ||
<pre> | <pre> | ||
− | Alias /static / | + | deactivate |
− | <Directory / | + | vim /etc/apache2/sites-enabled/firstproject.conf |
+ | a2ensite firstproject | ||
+ | </pre> | ||
+ | |||
+ | <pre> | ||
+ | <VirtualHost *:80> | ||
+ | ServerName domain.com | ||
+ | |||
+ | WSGIDaemonProcess username user=username group=usergroup python-home=/usr python-path=/var/www/domain.com/web | ||
+ | |||
+ | WSGIProcessGroup username | ||
+ | WSGIApplicationGroup %{GLOBAL} | ||
+ | WSGIScriptAlias / /var/www/domain.com/web/firstproject/wsgi.py process-group=username | ||
+ | |||
+ | |||
+ | Alias /static /var/www/domain.com/web/firstprocject/static | ||
+ | <Directory /var/www/domain.com/web/fistproject/static> | ||
Require all granted | Require all granted | ||
</Directory> | </Directory> | ||
− | <Directory / | + | <Directory /var/www/domain.com/web/firstproject/> |
<Files wsgi.py> | <Files wsgi.py> | ||
Require all granted | Require all granted | ||
</Files> | </Files> | ||
</Directory> | </Directory> | ||
− | + | </VirtualHost> | |
− | |||
− | |||
− | |||
</pre> | </pre> | ||
65-р мөр: | 83-р мөр: | ||
<pre> | <pre> | ||
− | sudo chown -R :www | + | sudo chown -R username:usergroup /var/www/domain.com/web/firstproject |
</pre> | </pre> | ||
74-р мөр: | 92-р мөр: | ||
sudo service apache2 restart | sudo service apache2 restart | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | == Зарим хэрэгтэй хаяг == | ||
+ | |||
+ | # [https://docs.djangoproject.com/en/2.0/howto/deployment/wsgi/modwsgi/#daemon-mode Django Docs] | ||
+ | # [https://qiita.com/linux_22B/items/2bc90b1c309444a5da0c] | ||
+ | # [https://qiita.com/itisyuu/items/dafa535adc8197208af1] | ||
[[Ангилал:Сисадмин]][[Ангилал:Linux]] | [[Ангилал:Сисадмин]][[Ангилал:Linux]] |
01:27, 1 Нэгдүгээр сар 2019-ий байдлаарх одоогийн засвар
[Ubuntu18.04 + Apache2.4 + Django2.1 + Python3.6 + wsgi + virtualenv]
Гарчиг
Requirement package install
sudo apt-get update sudo apt-get install python3-pip apache2 libapache2-mod-wsgi-py3 sudo pip3 install virtualenv virtualenvwrapper sudo apt-get install libsasl2-dev python-dev libldap2-dev libssl-dev pip3 install setuptools --upgrade
Configure a Python virtual enviroiment
cd /var/www/domain.com/web # upload project or create new: python3 manage.py startproject firstproject cd firstproject python3 -m venv firstprojenv source firstprojenv/bin/activate pip3 install django cd firstproject # If creating new: python3 ./manage.py migrate python3 ./manage.py createsuperuser python3 ./manage.py collectstatic
configure wsgi.py
Заавал хийхгүй байсан ч болох байх.
import os import site import sys site.addsitedir('/var/www/domain.com/web/firstprojenv/lib/python3.6/site-packages') sys.path.append('/var/www/domain.com/web/firstproject')
Configure Apache
deactivate vim /etc/apache2/sites-enabled/firstproject.conf a2ensite firstproject
<VirtualHost *:80> ServerName domain.com WSGIDaemonProcess username user=username group=usergroup python-home=/usr python-path=/var/www/domain.com/web WSGIProcessGroup username WSGIApplicationGroup %{GLOBAL} WSGIScriptAlias / /var/www/domain.com/web/firstproject/wsgi.py process-group=username Alias /static /var/www/domain.com/web/firstprocject/static <Directory /var/www/domain.com/web/fistproject/static> Require all granted </Directory> <Directory /var/www/domain.com/web/firstproject/> <Files wsgi.py> Require all granted </Files> </Directory> </VirtualHost>
Change Owner
sudo chown -R username:usergroup /var/www/domain.com/web/firstproject
Apache restart
sudo service apache2 restart