����������
Ubuntu 16.04
Apache 2.4
Django 1.9
Python 2.7
mod_wsgi
ǰ�ԣ����̴̳��Լ��������Ϻ����������Դ���а�����
1.��װ mod_wsgi
����Ĭ�ϴ���Ѿ�����ΰ�װ Apache��Django��Python �ˣ�ֱ�ӽ���ΰ�װmod_wsgi��
��֪�������кܶ���mod_python�ģ�����mod_python����ķ�ʽ��django��1.4��1.4֮ǰ�ǿ��Եģ����Ǵ�django1.5��ʼ�����������ַ�ʽ��django�����Ƽ�ʹ��wsgi��ʽ��Ҳ���������õ�mod_wsgi��
�ٷ��������£�
If you’re new to deploying Django and/or Python, we’d recommend you try mod_wsgi first. In most cases it’ll be the easiest, fastest, and most stable deployment choice.
��װ��
sudo apt-get install libapache2-mod-wsgi
�ٷ��ĵ���http://flask.pocoo.org/docs/0.10/deploying/mod_wsgi/
2.����һ��Django����
������ /var/www �´����ļ��� mysite��Ȼ�����mysite�ļ���
cd /var/www
sudo mkdir mysite
cd mysite
����Django���̣���������Ϊ:testproject
django-admin startproject testproject
�ҵ�Ŀ¼��
3.��Apache�����ļ�
ubuntu��apache2�����ļ��� /etc/apache2/ �¡�
�½�һ����վ�����ļ���
sudo vi /etc/apache2/sites-available/testdjango.conf
#testdjango.conf���ֿ������������Ϊ��ֱ��
�������£�
<VirtualHost *:80>
ServerName www.yourdomain.com
# ServerName�������ν��ֻҪ��host�а����ip��ַӳ�䵽�������Ϳ����ˡ������host��ķ��������� sudo a2dissite 000-default.conf ������������disable����ֻ�� testdjango.conf��(PS.site-enabled�е��ļ���link site-availabel�µ��ļ����������link�ļ�����enable�ģ����Ը���������鿴)
ServerAlias otherdomain.com
ServerAdmin tuweizhong@163.com
DocumentRoot /var/www/mysite/testproject #��һ����ָ����վ�ĸ�Ŀ¼
# Alias /media/ /home/tu/blog/media/
# Alias /static/ /home/tu/blog/static/
# <Directory /home/tu/blog/media>
# Require all granted
# </Directory>
# <Directory /home/tu/blog/static>
# Require all granted
# </Directory>
WSGIScriptAlias / /var/www/mysite/testproject/testproject/wsgi.py
# ��������Ǹ�·��ָ����վ�ĸ�Ŀ¼����һ��“/”��ʾ�ⲿ����ʱ����վ��Ŀ¼�������µ�requset��ʱ��apache�����↑ʼ������
# WSGIDaemonProcess ziqiangxuetang.com python-path=/home/tu/blog:/home/tu/.virtualenvs/blog/lib/python2.7/site-packages
# WSGIProcessGroup ziqiangxuetang.com
<Directory /var/www/mysite/testproject/testproject>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
ע���м��һ�δ������ע�ͣ���Ϊ��ʱ���ò��������ǵ�Ŀ��������½�Django���̣�����Apache�ϡ����ھ�̬�ļ��Ⱥ������ۡ�
���� WSGIDaemonProcess �� WSGIProcessGroup ��ʱû��ϸ�飬���ƵȲ���ʱ���õ����ȷ����⡣
�������ǵ� Apache �µ� sites-avaliable �ļ����µ����þ�д���ˡ�
4.��Django��wsgi.py�ļ�
�����������д�� WSGIScriptAlias ���ǰ�apache2�������վDjango project��ϵ�����ˡ�
�л������Ǹոս�����django��ĿĿ¼��
cd /var/www/mysite/testproject
�༭ testproject/wsgi.py �ļ���
sudo vi testproject/wsgi.py
���ݣ�
import os
import sys
from os.path import join,dirname,abspath
from django.core.wsgi import get_wsgi_application
PROJECT_DIR = dirname(dirname(abspath(__file__)))
print PROJECT_DIR
sys.path.insert(0,PROJECT_DIR)
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "testproject.settings")
application = get_wsgi_application()
���� Django �� wsgi.py �ļ�Ҳ�����ˡ�
6.��������վ
���� ���ǰ� Apache �� sites-avaliable �µ� 000-default.conf ������������disable����ֻ�� testdjango.conf��
sudo a2dissite 000-default.conf
֮��ִ�У�
sudo a2ensite testdjango.conf
sudo service apache2 reload
������ݿɸ�����ʾ����Apache����ʱ�Ѿ��ɹ��������Ʒ������Ĺ���IP�����ߴ���IP��127.0.0.1�����Կ������½��棺
��ʾDjango�����Ѿ��ɹ���Apache���ӡ�
�������ø��µ�ַ��//m.ajphoenix.com/linux/30804.html