新博客地址:http://muker.net/django-server.html

手头需要部署一个Django项目,前面的博客也因为偷懒也没有部署,这里记录一下部署过程。
ps:其实网上比较靠谱的说明还真不好找
服务器系统:Ubuntu14.04 32位
这里使用比较常用的apache2 和 mod_wsgi来部署
如果你也是刚开的服务器记得

sudo apt-get update

首先安装这两个软件:

sudo apt-get install apache2 libapache2-mod-wsgi

我这里的版本号:

# apachectl -v
Server version: Apache/2.4.7 (Ubuntu)
Server built: Mar 10 2015 13:05:59

接下来可以在服务器上安装一下Django并创建一个项目用作后面的测试,首先安装pip

sudo apt-get install python-pip

然后安装Django并且创建一个Django项目(自己选好创建的位置):

pip install django==1.6
django-admin.py startproject yourprojectname

我的项目地址在:/home/projects/dlsPro
Django的测试项目已经创建好了,接下来配置apache2
首先创建一个新的一个网站配置文件(vi用不习惯可以用nano):

sudo vi /etc/apache2/sites-available/sitename.conf

内容如下:

<VirtualHost *:80>
ServerName www.yourdomain.com
ServerAlias otherdomain.com
ServerAdmin muker715@aliyun.com Alias /media/ /home/projects/dlsPro/media/
Alias /static/ /home/projects/dlsPro/static/ <Directory /home/projects/dlsPro/media>
Require all granted
</Directory> <Directory /home/projects/dlsPro/static>
Require all granted
</Directory> WSGIScriptAlias / /home/projects/dlsPro/dlsPro/wsgi.py <Directory /home/projects/dlsPro/dlsPro>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>

上面的配置中写的 WSGIScriptAlias / /home/projects/dlsPro/dlsPro/wsgi.py 把apache2和你的网站联系起来了
但为了让脚本找到django项目的位置,得再修改下/home/projects/dlsPro/dlsPro/wsgi.py文件
在其中添加以下几行:

from os.path import join,dirname,abspath

PROJECT_DIR = dirname(dirname(abspath(__file__)))
import sys
sys.path.insert(0,PROJECT_DIR)

最后文件像这样:

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "dlsPro.settings")
from os.path import join,dirname,abspath PROJECT_DIR = dirname(dirname(abspath(__file__)))
import sys
sys.path.insert(0,PROJECT_DIR) from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

接下来保存更改,我们去启用新网站:

sudo a2ensite sitename.conf

根据提示我们还需要重新载入apache2:

service apache2 reload

此时去观察首页:

竟然还是apache2的默认页面。
这时看一下/etc/apache2/sites-enabled目录
发现有下面两个文件:

# ls
000-default.conf sitename.conf

default.conf是默认生成的,我们自己生成了新的设置之后就不再需要它了,所以删之并重新载入服务:

rm 000-default.conf
service apache2 reload

这时再刷新一下:

熟悉的界面出现在眼前,大功告成。

Django项目部署(阿里云)(1)--基本功能实现的更多相关文章

  1. vue+express+mysql项目总结(node项目部署阿里云通用)

    原文发布于我的个人博客上:原文点这里   前面经历千辛万苦,终于把博客的所有东西都准备好了,现在就只等部署了.下面我介绍下我的部署过程: 一.购买服务器和域名   如果需要域名(不用域名通过ip也可以 ...

  2. Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统

    Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...

  3. Django项目部署在Linux下以进程方式启动

    Django项目部署在Linux下以进程方式启动 这是一篇关于如何在linux下,以后台进程的方式运行服务,命令改改基本上就通用了. 开发完Django项目后,需要把项目部署到linux环境下.当然, ...

  4. 使用gunicorn将django项目部署到生产环境的子目录下,在nginx后端获取客户真实IP地址

    生产环境有时,并不是为了一个项目而存在的.毕竟,域名是比较稀有的. 今天遇到这个问题,解决了.作个记录. 并且,如果将django项目部署在Nginx后面,那如何获取用户真实的IP地址呢? 下面就来解 ...

  5. Maven项目使用阿里云的Maven库

    Maven项目下载一些jar包非常慢,有时候一个项目能下一个上午,因此可以考虑使用阿里云的Maven库,因为是国内的,所以下载速度非常酷 单个项目使用阿里云的Maven库: pom文件中 <!- ...

  6. Django项目部署(django+guncorn+virtualenv+nginx)

    一.说明 为了django项目部署到生产环境上,能够稳定的运行,且能够同时指出http和https的访问,对django的部署进行了一些研究,决定采用django + gunicorn + virtu ...

  7. JAVA项目部署到云服务器

    转自:(此处更详细)http://blog.csdn.net/gulu_gulu_jp/article/details/50994003 一.前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在 ...

  8. django项目部署过程

    django项目部署过程 1.上传代码 用git或者其他工具,如scp 代码上传后保证每个应用下的migrations文件夹里只有一个__init__.py文件,自己的迁移文件不要上传上来,具体的gi ...

  9. 如何将你的 Vue.js 项目部署在云开发静态托管之上

    云开发静态托管是云开发提供的静态网站托管的能力,静态资源(HTML.CSS.JavaScript.字体等)的分发由腾讯云对象存储 COS 和拥有多个边缘网点的腾讯云 CDN 提供支持. 在云开发静态托 ...

  10. Windows下django项目部署 通过Apache2.4+mod_wsgi

    经过几天踩坑,记录在Windows10下通过Apache2.4部署Django项目的过程 运行环境: 先说下环境,怎么安装倒是其次的,版本很重要,我是根据mod_wsgi的版本要求下载的各个版本(py ...

随机推荐

  1. oracle 12c 报错 ora-03137 来自客户机的格式错误的TTC包被拒绝

    昨天下午,实施报了一个oracle的报错ora-03137 说是数据库在11g时没有问题,升级到12c 时,就报错了. 本地调试,看到执行完sql后,报异常,如下: 把SqL在12c的数据库执行一下, ...

  2. linux安装数据库删除

    https://blog.csdn.net/qq_40550973/article/details/80721014 卸载mysql .快速删除 yum remove mysql mysql-serv ...

  3. 前端打印功能实现及css设置

    首先是使用下边代码,实现js局部打印功能.参数dom为需要打印的节点,为了保证页面功能的单一性,最好弹出一个新的预览页面完成打印功能. function print(dom){ var body = ...

  4. java中使用Lambda表达式的5种语法

    1,标准写法 思考下述情况: String[] arr = {"program", "creek", "is", "a" ...

  5. The tilde ( ~ ) operator in JavaScript

    From the JavaScript Reference on MDC, ~ (Bitwise NOT) Performs the NOT operator on each bit. NOT a y ...

  6. Kotlin Android Studio 环境搭建

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源. Kotlin 可以编译成Java字节码,也可以编 ...

  7. 【Demo】CSS3 动画

    CSS3 动画(@keyframes,animation) CSS3 @keyframes 规则 要创建CSS3动画,你将不得不了解@keyframes规则. @keyframes规则是创建动画. @ ...

  8. 1-16-2 LVM管理和ssm存储管理器使用&磁盘配额

    ssm存储管理器使用&磁盘配额 ssm存储管理器使用 系统存储管理器的使用 系统存储管理器(又称ssm,即system-storage-manager),是RHEL7/CentOS7新增的功能 ...

  9. UVA-10917 Walk Through the Forest (dijkstra+DP)

    题目大意:n个点,m条边的无向图.一个人从起点到终点按照下面的走法:从A走向B当A到终点的最小距离比B到终点的最小距离大时.问从起点到终点有多少路径方案. 题目分析:先用dijkstra预处理出终点到 ...

  10. UVALive-5135 Mining Your Own Business (无向图的双连通分量)

    题目分析:在一张无向图中,将一些点涂上黑色,使得删掉图中任何一个点时,每个连通分量至少有一个黑点.问最少能涂几个黑点,并且在涂最少的情况下有几种方案. 题目分析:显然,一定不能涂割点.对于每一个连通分 ...