Django项目部署(阿里云)(1)--基本功能实现
新博客地址: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)--基本功能实现的更多相关文章
- vue+express+mysql项目总结(node项目部署阿里云通用)
原文发布于我的个人博客上:原文点这里 前面经历千辛万苦,终于把博客的所有东西都准备好了,现在就只等部署了.下面我介绍下我的部署过程: 一.购买服务器和域名 如果需要域名(不用域名通过ip也可以 ...
- Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统
Python3.6+nginx+uwsgi部署Django程序到阿里云Ubuntu16.04系统 这个是写好的Django程序在本地机运行的情况,一个查询接口. 准备工作 1.首先购买一台阿里云的EC ...
- Django项目部署在Linux下以进程方式启动
Django项目部署在Linux下以进程方式启动 这是一篇关于如何在linux下,以后台进程的方式运行服务,命令改改基本上就通用了. 开发完Django项目后,需要把项目部署到linux环境下.当然, ...
- 使用gunicorn将django项目部署到生产环境的子目录下,在nginx后端获取客户真实IP地址
生产环境有时,并不是为了一个项目而存在的.毕竟,域名是比较稀有的. 今天遇到这个问题,解决了.作个记录. 并且,如果将django项目部署在Nginx后面,那如何获取用户真实的IP地址呢? 下面就来解 ...
- Maven项目使用阿里云的Maven库
Maven项目下载一些jar包非常慢,有时候一个项目能下一个上午,因此可以考虑使用阿里云的Maven库,因为是国内的,所以下载速度非常酷 单个项目使用阿里云的Maven库: pom文件中 <!- ...
- Django项目部署(django+guncorn+virtualenv+nginx)
一.说明 为了django项目部署到生产环境上,能够稳定的运行,且能够同时指出http和https的访问,对django的部署进行了一些研究,决定采用django + gunicorn + virtu ...
- JAVA项目部署到云服务器
转自:(此处更详细)http://blog.csdn.net/gulu_gulu_jp/article/details/50994003 一.前言 前面我们已经尝过了在云服务器上部署代码的甜头了,现在 ...
- django项目部署过程
django项目部署过程 1.上传代码 用git或者其他工具,如scp 代码上传后保证每个应用下的migrations文件夹里只有一个__init__.py文件,自己的迁移文件不要上传上来,具体的gi ...
- 如何将你的 Vue.js 项目部署在云开发静态托管之上
云开发静态托管是云开发提供的静态网站托管的能力,静态资源(HTML.CSS.JavaScript.字体等)的分发由腾讯云对象存储 COS 和拥有多个边缘网点的腾讯云 CDN 提供支持. 在云开发静态托 ...
- Windows下django项目部署 通过Apache2.4+mod_wsgi
经过几天踩坑,记录在Windows10下通过Apache2.4部署Django项目的过程 运行环境: 先说下环境,怎么安装倒是其次的,版本很重要,我是根据mod_wsgi的版本要求下载的各个版本(py ...
随机推荐
- 【转】asp.net 项目在 IE 11 下出现 “__doPostBack”未定义 的解决办法
最近我们运营的网站有用户反馈在 IE 11 下<asp:LinkButton> 点击出现 “__doPostBack”未定义”,经过一番google,终于知道了原因:ASP.NET 可能无 ...
- cocos2d-x入门二 helloworld实例运行与创建
本机环境:win7+VS2012+python2.7.8+cocos2d-x-3.8,另外本机已经配置android开发环境(java+eclipse+SDK+ADT),针对环境搭建后续会有一篇详细说 ...
- shell脚本中case select 的使用
#!/bin/bash # case echo "1.Install PHP" echo "2.Install Mysql" echo "3.Inst ...
- LeetCode第[88]题(Java):Merge Sorted Array(合并已排序数组)
题目:合并已排序数组 难度:Easy 题目内容: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as ...
- jQuery中兄弟元素、子元素和父元素的获取
我们这里主要总结jQuery中对某元素的兄弟元素.子元素和父元素的获取,原声的Javascript代码对这些元素的获取比较麻烦一些,而jQuery正好对这些方法进行封装,让我们更加方便的对这些元素进行 ...
- java代码实现递归
think in java 书中使用递归分析 代码如下: public class Snake implements Cloneable { private Snake next; private c ...
- selenium的三种等待时间设置
为了提高脚本的稳定性,我们需要在脚本中增加等待时间 第一种:强制等待 Thread.sleep():固定休眠时间设置,Java的Thread类里提供了休眠方法sleep,导入包后就能使用 sleep( ...
- Android Studio 3.0 及个版本下载和 gradle 各版本下载
Android Studio 3.0 下载地址: 链接:http://pan.baidu.com/s/1jHVuOQi 密码:3pd0 Android Studio 3.0 包含了三大主要功能: 一套 ...
- IOS UI-键盘处理和UIToolbar
// // ViewController.m // IOS_0225-键盘处理和UIToolBar // // Created by ma c on 16/2/25. // Copyright © 2 ...
- 转:HDFS运行原理
简介 HDFS(Hadoop Distributed File System )Hadoop分布式文件系统.是根据google发表的论文翻版的.论文为GFS(Google File System)Go ...