最近在學Python和Django,想本身部署一個服務器試試python
環境:ubuntu12.04 server | apache2 | django1.6 | python2.7 | mod_wsgiapache
在網上找了好多參考都不起做用,不是老版本的方法就是過於複雜django
今天柳暗花明又一村,在Django官網(djangoproject.com)上找到了最簡單的方法:ubuntu
1. 安裝apache2:瀏覽器
sudo apt-get install apache2
apache2相關的操做:服務器
啓動:sudo service apache2 startpython2.7
中止:sudo service apache2 stop測試
重啓:sudo service apache2 restart(更改配置後的經常使用操做)網站
啓動測試:在瀏覽器中輸入http://localhosturl
配置文件的位置:
可執行程序:/usr/sbin/apache2
配置文件:/etc/apache2
網站文件:/var/www
(網站的默認位置能夠在/etc/apache2/sites-available/default中更改,修改DocumentRoot /var/www改爲本身的網站存放地址便可)
apache2主要配置爲/etc/apache2/apache2.conf,可是並無配置全部的東西,端口配置在ports.conf,網站根目錄在/etc/apache2/sites-available/default,額外的配置能夠寫在httpd.conf中(默認爲空,會被主配置用Include httpd.conf語句引入)
2. 安裝mod_wsgi.so:
2.x python:
sudo apt-get install libapache2-mod-wsgi
3.x python:
sudo apt-get install libapache2-mod-wsgi-py3
3. 安裝Django1.6:
sudo pip install django
(pip是python三方包的安裝模塊,若是沒有安裝可先用sudo apt-get install python-pip來安裝)
創建工程:
在/var/www下面創建工程(cd /var/www)
sudo django-admin.py startproject mysite
文件結構以下:
mysite/ manage.py mysite/ __init__.py settings.py urls.py wsgi.py
4. 配置httpd.conf:
採用wsgi部署Django的詳細過程可參考Django的官方網站(https://docs.djangoproject.com/en/1.6/howto/deployment/wsgi/modwsgi/)
在httpd.conf里加入:
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py WSGIPythonPath /path/to/mysite.com <Directory /path/to/mysite.com/mysite> <Files wsgi.py> Order deny,allow Allow from all </Files> </Directory>
5. 重啓apache2:
sudo service apache2 restart
DONE!