Ubuuntu10.04上配置Django、Apache、mod_wsgi

Ubuuntu10.04上配置Django、Apache、mod_wsgi

1、更新服务

  1. sudo apt-get update
  2. sudo apt-get upgrade

安装Apache和mod_wsgi

  1. sudo apt-get install apache2 libapache2-mod-wsgi

安装工具setuptools 和pip

  1. sudo apt-get install python-setuptools
  2. sudo apt-get install python-pip

安装Django

  1. sudo pip install django

创建站点目录

  1. sudo mkdir /srv/www

2、添加host进行测试

  1. sudo nano /etc/hosts

 

  1. 127.0.0.1    djangoserver
  2. 127.0.0.1    wsgi.djangoserver
  3. 127.0.0.1    hello.djangoserver

3、测试WSGI是否正常工作

  1. sudo mkdir /srv/www/wsgi
  2. sudo nano /srv/www/wsgi/app.wsgi

添加以下内容:

  1. def application(environ, start_response):
  2.     status = ‘200 OK’
  3.     output = ‘Hello World!’
  4.     response_headers = [(‘Content-type’, ‘text/plain’),
  5.                         (‘Content-Length’, str(len(output)))]
  6.     start_response(status, response_headers)
  7.     return [output]

创建一个新的apache站点

  1. sudo nano /etc/apache2/sites-available/wsgi

添加以下内容:

  1. <VirtualHost *:80>
  2.     ServerName wsgi.djangoserver
  3.     DocumentRoot /srv/www/wsgi
  4.     <Directory /srv/www/wsgi>
  5.         Order allow,deny
  6.         Allow from all
  7.     </Directory>
  8.     WSGIScriptAlias / /srv/www/wsgi/app.wsgi
  9. </VirtualHost>

激活站点

  1. sudo a2ensite wsgi
  2. sudo /etc/init.d/apache2 reload

http://wsgi.djangoserver

效果如下:

4、测试Django是否正常工作
创建Django工程

  1. cd /srv/www
  2. sudo django-admin.py startproject hello

配置Django的wsgi文件

  1. sudo mkdir /srv/www/hello/apache
  2. sudo nano /srv/www/hello/apache/django.wsgi

添加以下内容:

  1. import os
  2. import sys
  3. path = ‘/srv/www’
  4. if path not in sys.path:
  5.     sys.path.insert(0, ‘/srv/www’)
  6. os.environ[‘DJANGO_SETTINGS_MODULE’] = ‘hello.settings’
  7. import django.core.handlers.wsgi
  8. application = django.core.handlers.wsgi.WSGIHandler()

创建一个新的apache站点

  1. sudo nano /etc/apache2/sites-available/hello

添加以下内容:

  1. <VirtualHost *:80>
  2.     ServerName hello.djangoserver
  3.     DocumentRoot /srv/www/hello
  4.     <Directory /srv/www/hello>
  5.         Order allow,deny
  6.         Allow from all
  7.     </Directory>
  8.     WSGIDaemonProcess hello.djangoserver processes=2 threads=15 display-name=%{GROUP}
  9.     WSGIProcessGroup hello.djangoserver
  10.     WSGIScriptAlias / /srv/www/hello/apache/django.wsgi
  11. </VirtualHost>

激活站点

  1. sudo a2ensite hello
  2. sudo /etc/init.d/apache2 reload

http://hello.djangoserver
效果如下:

原文地址:http://blog.stannard.net.au/2010/12/11/installing-django-with-apache-and-mod_wsgi-on-ubuntu-10-04/

发表评论

电子邮件地址不会被公开。 必填项已用*标注