Ubuntu下Django的安装与配置

Apache安装:
第一步:安装Apache2。
在terminal输入sudo apt-get install apache2

第二步:安装mod_wsgi。
在terminal输入sudo apt-get install libapache2-mod-wsgi


MySQL安装:
第一步:安装MySQL server。
在terminal输入sudo apt-get install mysql-server

第二步:安装MySQL的python接口。
在terminal输入sudo apt-get install python-mysqldb



Django安装:
第一步:下载Django软件包。
可以从Django的官网下载,这里是地址, https://www.djangoproject.com/download/。点击 First, download  Django-1.5.1.tar.gz  ( checksums )就开始下载了。

第二步:解压缩Django软件包。
如果你用GUI的话,那么就直接双击就可以了。如果在terminal,输入tar -zxvf {file}.tar.gz。这里{file}是你的Django文件包的名字。

第三步:安装Django软件包。
cd进入解压缩得到的文件夹,然后输入sudo python setup.py install。安装完成!

或者:

sudo apt-get install python-django


配置部分:

在ubuntu上部署django其实还算简单直观,最重要的问题就是路径设置正确。

一,安装python 和django。这个很简单,django用pip安装就可以。就不解释了。

二,安装apache2 和 wsgi。

这里用的是apt-get.

sudo apt-get insall apache2

sudo apt-get install libapache2-mod-wsgi

需要注意的是,如果之前安装配置过apache2的并且配置很乱,无法修复,建议还是完全卸载之后在安装。完全卸载的命令:

$ sudo apt-get --purge remove apache-common

$ sudo apt-get --purge remove apache*

安装完以后,去 /etc/apache2/ 下的 mods-available 和mods-enabled 中查看是否都存在 wsgi.conf 和wsgi.load 两个文件。

三、配置apache 和 wsgi


/*最好不要将创建的项目放在apache的默认目录下,这里我们在home目录下用户文件夹下新建一个文件夹

  cd home
  cd sh3llc0der
  mkdir work

然后在work目录下创建我们的项目

*/

django-admin.py createproject hello

创建成功后会生成一个hello的工程文件,里面包含另一个hello文件夹和manage.py等,可以通过manage.py来运行Django的测试服务器,但这里我们目的是通过Apache来访问。

4.配置wsgi

注意这里apache安装后的配置文件位于”/etc/apache2/sites-available/“目录下,前面在网上找资料都说是httpd.conf,真是坑爹,都没人试一试,抄来抄去,有你麻痹的意思啊

创建wsgi文件:

sudo nano /home/sh3llc0oder/work/hello/apache/django.wsgi

写入以下内容:

import os

import sys

path = '/home/sh3llc0der/work/hello'

if path not in sys.path:

    sys.path.insert(0, '/home/sh3llc0der/work/hello')

os.environ['DJANGO_SETTINGS_MODULE'] = 'hello.settings'

import django.core.handlers.wsgi

application = django.core.handlers.wsgi.WSGIHandler()

首先修改一下host文件,将域名testmydjango.com指向127.0.0.1

现在我们需要创建一个自己的站点:

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

写入以下内容:

    ServerName hello.djangoserver
    DocumentRoot /home/sh3llc0der/work/hello

    /home/sh3llc0der/work/hello>
        Order allow,deny
        Allow from all
   

    WSGIDaemonProcess testdjango.com processes=2 threads=15 display-name=%{GROUP}
    WSGIProcessGroup testdjango.com

    WSGIScriptAlias / /home/sh3llc0der/work/hello/apache/django.wsgi

注意WSGIDaemonProcess和WSGIProcessGroup里面是我们的域名
然后我们激活创建的站点:
sudoa2ensitehello
sudo/etc/init.d/apache2reload
重启一下apache
sudo/etc/init.d/apache2restart
访问testdjango.com

如果遇到服务器403的错误,那么可能是你的"/"目录被禁止访问(默认)
修改一下apache2.conf文件(位于/etc/apache2/)
把Require all denied改为Allow from all就可以了

 



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值