在ubuntu下通过apache部署django

首先需要下载python,django,apache以及wsgi模块

python基本已经自带,我用的是2.7,不是的话可以重新装一个

下载django

sudo apt-get install python-django

下载apache2

sudo apt-get install apache2

下载wsgi

sudo apt-get install libapache2-mod-wsgi

需要修改两个文件

自己项目下新建一个apache文件夹,在文件夹里新建一个django.wsgi内容如下i

import os

import sys

path = '/var/www'

if path not in sys.path:

  sys.path.insert(0, '/var/www/yourproject')

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

from django.core.wsgi import get_wsgi_application

application = get_wsgi_application()

在/etc/apache2/sites-available/新建一个yourproject.conf文件

<VirtualHost *:80>

  ServerName xx.xx.xx.xx(IP)

  DocumentRoot /var/www

  <Directory /var/www/yourproject>

    Options FollowSymLinks

    AllowOverride None

    Require all granted

  </Directory>

  WSGIDaemonProcess yourproject processes=2 threads=15 display-name=%{GROUP}

  WSGIProcessGroup yourproject

  #以下红色是修改静态文件

  Alias /statics/ /var/www/yourproject/statics/

  <Directory "/static/">

    Require all granted

  </Directory>

  WSGIScriptAlias /  /var/www/yourproject/apache/django.wsgi

</VirtualHost>

接着sudo a2ensite yourproject

sudo /etc/init.d/apache2 reload

打开网站查看是否成功

如果失败就看看错误日记

sudo /var/log/apache2/error.log

成功之后就开始导入数据库

mysql -u root -p

create database xxx

use database xxx

source /x/x/x.sql

导入成功后查看是否成功

遇到的问题:

Error importing module django.middleware.security: "No module named security"

引起这种问题的原因是django1.8之后加入了django.middleware.security,服务器上的django版本可能过低,无法识别。

解决办法:
sudo pip install django==1.10.2目前最新版本

或者到setting.py注释掉这个东西

a2ensite,a2dissite,激活或者取消激活site

a2enmod,a2dismod,激活或者取消激活mod

a2enconf,a2disconf激活或者取消激活conf

apache部署django记录的更多相关文章

  1. Windows下Apache部署Django过程记录

    Win7/Apache/Python2.7/Django1.9部署Web   环境: Windows7 Apache httpd-2.4.16-win64-VC14 Python2.7.11 Djan ...

  2. Apache部署django项目

    在此之前,我们一直使用django的manage.py 的runserver 命令来运行django应用,但这只是我们的开发环境,当项目真正部署上线的时候这做就不可行了,必须将我们的项目部署到特定的w ...

  3. Apache部署Django+Vue

    首先部署Vue,后端项目django开5000端口,所以vue里的路由是ip:5000,然后打包npm run build 生成dist文件 把dist文件里的index.html和static放在/ ...

  4. Windows+Apache+Python+Django 踩坑记录

    摘要 使用Python进行Web项目开发:相对于主流三大Web端解决方案(Java/.NET/PHP) Python在某些方面具有一定的优势,相对 Java/.NET 有更轻量级的部署方案,相对PHP ...

  5. mac osx 上面部署Django项目 apache+mysql+mod_wsgi

    1.安装Xcode command line tools 首先,编译mysql和Homebrew需要用到Xcode command line tools,所以首先安装command line tool ...

  6. 部署django - Apache + mod_wsgi + windows

    部署django - Apache + mod_wsgi + windows 1.环境 django 1.6.2 python 3.3 32位 apache 2.4.7 32位 一个可以使用的djan ...

  7. Ubuntu下Apache中部署Django

    环境:ubuntu12.04 server | apache2 | django1.6 | python2.7 | mod_wsgi 1. 安装apache2: sudo apt-get instal ...

  8. 百度云的ubuntu16.04.1部署Apache服务器+Django项目

    使用Apache和mod_wsgi部署Django 是一种久经考验的将Django投入生产的方法. mod_wsgi是一个Apache模块,可以托管任何Python WSGI应用程序,包括Django ...

  9. Nginx+uwsgi+Django 的web应用环境部署-完整记录

    Python作为当前最火爆最热门,也是最主要的Web开发语言之一,在其二十多年的历史中出现了数十种Web框架,比如Django.Tornado.Flask.Twisted.Bottle和Web.py等 ...

随机推荐

  1. [开源]STM32F103RBT6最小系统,LEDx2,KEYx4

    STM32F103RBT6最小系统,调试通过,可以SWD模式下载程序,支持串口,一键下载. stm32f103rbt6最小系统链接:http://pan.baidu.com/s/1qYCHeHY 密码 ...

  2. mysql中varchar(50)最多能存多少个汉字

    首先要确定mysql版本4.0版本以下,varchar(50),指的是50字节,如果存放UTF8汉字时,只能存16个(每个汉字3字节) 5.0版本以上,varchar(50),指的是50字符,无论存放 ...

  3. iOS ASIHTTPRequest 使用指南

    http://www.devdiv.com/iOS_iPhone-ASIHTTPRequest使用指南---_lt__lt_翻译稿_gt__gt_---连载-thread-93741-1-1.html

  4. 利用DBMS_ROWID.ROWID_CREATE来找出事务等待的行数据

    在v$session视图中有四个字段,如下: Wait information in v$session view ROW_WAIT_OBJ# NUMBER Object ID for the tab ...

  5. Android系统自带样式(@android:style/)

    在AndroidManifest.xml文件的activity中配置 1.android:theme="@android:style/Theme" 默认状态,即如果theme这里不 ...

  6. CentOS 配置本地yum源

    [root@localhost ~]#ls /media/dvd/                                                                   ...

  7. [RGeos]手簿

    1.屏幕坐标以像素为单位,地图坐标通常以米为单位,CAD制图默认以毫米为单位. DPI是“dot per inch”的缩写.顾名思义,就是指在每英寸长度内的点数.通常,我们都使用dpi来作为扫描器和打 ...

  8. UIPickerView详解

    一.UIPickerView 1.UIPickerView的常见属性 // 数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id< ...

  9. Unity3D 通用提示窗口实现分析(Inventory Pro学习总结)

    背景 游戏中的UI系统或者叫做GUI窗口系统主要有:主要装备窗口(背包,角色窗口也是一种特殊窗口).确实提示窗口(如购买确认).信息提示窗口(一遍没有按钮,ContexntMenu)和特殊窗口(聊天记 ...

  10. jquery垂直展开折叠手风琴二级菜单

    摘要:jquery实现垂直展开二级菜单 最近新开发一个简单项目,用到左侧两级的菜单.找找了手头的文件,竟然没有现成的代码,算了,去网上找找整理下吧. 注:jquery-1.8.3.min.js需要下载 ...