Ubuntu+Django+Apache配置方法

网友Liu xu最新分享(2017.1.10) 全新服务器下配置Django项目(运行模式:Ubuntu+Django+Apache2+Mod_wsgi) 见 

--------------------以下内容可能太古老而不行--------------------

1.安装apache2 和libapache2-mod-wsgi

sudo apt-get install apache2 libapache2-mod-wsgi

2.安装Django

从官网下载,解压后安装,这个很容易,不说了

3.创建Django项目

最好不要将创建的项目放在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

Ubuntu+Django+Apache配置方法

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

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

Ubuntu+Django+Apache配置方法

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

Ubuntu+Django+Apache配置方法

Django 的详细介绍请点这里
Django 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a527eb6863a751820af201ea0823ed6d.html