Depoly Ubuntu+Apache2.4+Python+Django
一、前言近来突发兴致学习Django,初始根据教程学习,用内置服务器运行
python manage.py runserver
在浏览器中输入
http://127.0.0.1:8000
得到合适的页面,也是正确的页面。
但是,在Django的开发文档中也这么说明,runserver只作为开发用途,而不是发行用途。
所以,寻求用Apache来运行Django。
这也就带来了难题,即需要如题配置。经过大约一天的时间,各种谷歌、百度寻求帮助,排除一个个error终于配置成功。
现将过程介绍如下,防止以后再遇到此类问题。
声明:
我使用的是Ubuntu 14.04 LTS+Apache2.4+Python2或者3(根据mod_wsgi.so改变)+Django1.6或者以上
二、安装Apache等
sudo apt-get install apache2 libapache2-mod-wsgi python-django
三、 Apache配置
在/etc/apache2/中找到apache2.conf
在最后添加
<VirtualHost *:80>
ServerName hello.com
DocumentRoot /var/www/yourproject
<Directory /var/www/yourprojec>
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
在/etc/apache2/sites-available/中添加wsgi.conf,在新创建的wsgi.conf中输入
<VirtualHost *:80>
ServerName wsgi.testserver
DocumentRoot /var/www/yourproject
<Directory /var/www/yourproject>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /var/www/django.wsgi
</VirtualHost>
四、 Django配置
在/var/www/中创建django.wsgi,并在其中输入
import os
import sys
sys.path.append('/var/www/yourproject')
os.environ['DJANGO_SETTINGS_MODULE'] = 'yourproject.settings'
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
五、测试
输入
sudo a2ensite wsgi.conf
sudo service apache2 reload
差不多成功了。
页:
[1]