阿里云实现简单的运行 Django 项目
首先申请一个阿里云账号,买一个阿里云服务器是必须的,对于一个学生来讲,按道理说,在不打折不搞活动的时候,价格还是蛮贵的,所以说,同志们,革命尚未成功,一定要挺住!!!
申请了阿里云,消费完毕,登录阿里云账号,然后点击右上角“控制台”,进入“云服务ECS” -“概览”,就看到自己的阿里云服务器了。

我现在搞得这个呢,是搭载的 Ubuntu 操作系统,我就以我的继续写了哈。
要在阿里云上部署自己的 Django 项目,首先我们自己编写的 django 项目在自己电脑上测试好,首先要保证在自己电脑上不会出问题,在自己电脑上编写好,确定代码不会出问题,不然上传到阿里云上去的话在修改就特别的费劲!!
OK ,那么现在我们就要配置阿里云的 python 环境。首先说一点哈,阿里云的 linux 系统自带 python2 和 python3 的运行环境,但是!BUT!他们都是默认运行 python2,如果我们的项目就是用 python2 编写的那么就没什么大问题,但是,如果我们是基于 python3 编写的,我们就需要修改 linux 系统的 python 默认环境,也就是由本来默认的 python2 修改为 python3,操作步骤就是在阿里云的 Ubuntu 系统上输入两条命令。
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3
附大神博客:https://www.cnblogs.com/white-the-Alan/p/8900004.html
OK ,输入完上边的两条命令,基本上就没有问题了,我们在运行 python 命令就会发现已经有 python2 切换到了 python3,这一步完成!
修改完 python的默认版本,接下来就需要安装 django 环境,我们可以先看一下我们电脑上是哪个版本,然后在阿里云上也安装对应的版本,免得版本不一致效果不理想。

打开,命令提示符 输入 “python” 进入python解释环境。
输入命令 “import django”,“django.VERSION” 查看本机 django 的版本。
拿到本机的版本就可以去阿里云下载对应的 django 版本了。
阿里云的命令是 :
sudo pip install django==2.0.
安装过程中可能会出问题,比如说,他会告诉你说 pip 命令没有安装,用不了 pip 命令,怎么办呢?很简单,装一个!命令如下:
apt-get install python3-pip
运行完上面的命令之后,不出意外(几乎不会出意外)的情况下,pip 命令就安装成功了,再次安装 django 就不会出问题了。
那这样的话 django 环境也搭建好了,对了 ,安装django环境时双等于后边的数是版本号。
接下来就是安装我们的数据库,MySQL 数据库并且配置,这么很重要,要考虑字符编码,不然可能会乱码。
这么安装MySQL数据库在我之前一篇博客已经介绍了,不会的话去翻我的博客或者去百度,我博客的安装方法就三条命令,很简单就可以安装完成!
安装完成后,进入数据库的命令是:
mysql -u root -p
然后输入密码就可以进去操作数据库了。
但是!BUT!有问题,MySQL数据库默认的编码格式是 latin1 ,但是如果是想插入中文就会出问题,就需要修改他的字符编码,改为 utf8 格式,记住,是 utf8 ,不是 utf-8 !!!
而且修改之后只对修改完成之后创建的数据库生效,修改之前创建的数据库编码还是之前的。如果不妨碍的话,就直接安装完数据库把编码改了。
操作步骤为:
首先停mysql服务,编辑配置文件my.cnf
$sudo stop mysql
$sudo vim /etc/mysql/my.cnf
修改文件里边内容:
[client]
default-character-set=utf8 #增加这一行,指定字符集
port =
socket = /var/run/mysqld/mysqld.sock ............. [mysqld]
character_set_server=utf8 #增加这一行,指定字符集
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
重启服务,字符集就成了UTF-8
$ sudo start mysql
$ sudo mysql -uroot -p
mysql> use root
mysql> show variables like '%char%' ;#更改前存在的用户字符集不会改变,以后新建的用户字符集都变成了UTF-
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
mysql> create database mydb;
mysql> use mydb
mysql> show variables like '%char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
有一个创建数据库直接指定编码格式的命令也写一下:
创建数据库test,指定字符集为utf8:
create database test character set utf8;
然后数据库就配置完成了,操作数据库的命令在我之前的博客也有写过,不会的话去我博客或者直接百度,我博客都是我确认没问题的。
然后就是上传自己的 django项目,用软件连接阿里云,分别是:
Xftp 用来给阿里云上传文件的,比如我们的django项目,本地编写好了直接上传。
Xshell 用来连接阿里云,连接上之后我们就不需要每次进网站操作阿里云了, 可以用这个客户端操作。

Xftp 和 Xshell 下载地址:http://opensource.chinamoocs.com/
就是这两个软件,去网上下绿色版,正规是收费的,超级膈应人。
阿里云项目部署好了的话,访问就是阿里云的外网地址加上我们开的端口号就可以访问,外网地址是阿里云分配给我们的,唯一的,端口号是我们自己开通的,要避开系统固定端口和某些软件的常用端口。
比如我们开 8080 , 我们就需要去 阿里云安全组 开开端口,可以被访问到。

添加一条安全规则:

然后访问我们的地址,就可以正常访问我们的 django 项目了!
好在如果配置过程中出问题了也没关系,阿里云支持初始化,选中之后就初始化到我们刚买阿里云的时候了,就和我们自己的笔记本电脑一键还原或者是重装系统一样,还可以换系统,如果不喜欢Ubuntu还可以换成CentOS的,很方便,随便鼓捣就行。

但是重新初始化或者是更换需要停止实例,不用教,自己鼓捣鼓捣就会了,很简单!
完成!
阿里云实现简单的运行 Django 项目的更多相关文章
- 阿里云搭建nginx + uWSGI 实现 django 项目
系统版本 CentOS/7 64位 1.安装使用python3 创建python3目录 sudo mkdir /usr/local/python3 进入python3目录 cd /usr/local/ ...
- django第8天(在测试文件中运行django项目|单表操作)
django第8天 在测试文件中运行django项目 1.将项目配置文件数据库该为mysql,修改配置信息 PORT = '127.0.0.1' DATABASES = { 'default': { ...
- 在阿里云服务器ubuntu14.04运行netcore
从netcore1.0正式发布就很激动,想要赶紧学习. 最近博客园的一篇文章给了完整的指导非常感谢,但是在实际实现到发布到阿里云服务器遇到一些问题,记录下来. 首先上基础文章http://www.cn ...
- pycharm配置运行django项目步骤
1:在django项目的跟目录下执行:这是直接在Linux系统中直接运行 python manage.py runserver 0:8000 然后在浏览器中输入IP端口即可访问 pycharm配置运行 ...
- pytharm运行django项目
pytharm运行django项目 安装Django 下载Django包,解压缩. CMD 进入解压路径下. 执行: python setup.py install 增加环境变量: C:\Pytho ...
- 03 Linux下运行Django项目
1.安装windows和linux传输文件的工具 pip install lrzsz 提供两个命令 一个是上传一个是下载 rz 接收 直接rz sz 上传 直接sz 或者直接拖拽 2.在线下载资源的命 ...
- docker 运行Django项目
一.概述 已经写好了一个Django项目,需要将这个项目用docker封装一个镜像,使用k8s发布! 在封装并运行的过程中,发现了很多问题,这里会一一介绍! 二.时区问题 采用的是镜像是 ubuntu ...
- 阿里云esc服务器上部署java项目
文章中使用centos(6和7版本).Xshell.Xftp 因为部署过程直接从操作服务器开始,如果你还没有连接好服务器请参考http://blog.csdn.net/ctrlxv/article/d ...
- 阿里云上到底能运行SAP哪些产品?
本文主要内容大部分来源于SAP已经发布的note: 2552731 - SAP Applications on Alibaba Cloud: Supported Products and IaaS ...
随机推荐
- Django ---- 基础题
一. 1.写出你所知道Djang有关的所有命令(下载.安装等) .安装django pip install django == .创建项目 diangoadmin startproject 项目名 ...
- Centralized Cache Management in HDFS
Overview(概述) Centralized cache management in HDFS is an explicit caching mechanism that allows users ...
- 疯狂java讲义 第三版 笔记
java7新加特性: 0B010101 二进制数 int c=0B0111_1111; 数值中使用下划线分隔 switch 支持String类型 字符串常量放在常量池 String s0 ...
- JavaScript中的对象描述符(属性特性)
我们先创建一个对象: var person = { name: "Nicholas", _job: "Software Engineer", sayName: ...
- windows7系统下让所有文件夹都使用同一种视图的方法
Windows7系统可以对每个文件夹进行个性化视图设置,可以根据自己的个人喜好和实际需要更改文件或文件夹图标的大小,或者让文件或文件夹以列 表.平铺等方式显示.但是,如果你对N个文件夹视图进行了风格各 ...
- 很多人以为 connect 和 disconnect 应该像 new 和 delete 一样成对出现 这是错误的(只要 sender 或 receiver 其中之一不存在了,connect 会自动失效。QObject::connect 函数是线程安全的)
其实我写文章也是边查资料边编辑的 有时候是怕自己的阐述不严谨,有时候是怕自己重复造轮子 就像有些人不停的教大家QLabel QDialog QWidget 个人是不屑的 命令模式 用 Qt's Und ...
- LightOJ 1027 - A Dangerous Maze(求期望)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1027 题意:又一个迷宫,有n个门,每个门又一个值num,如果num>0 说明在n ...
- vue之vue-cookies
vue之vue-cookies npm链接:https://www.npmjs.com/package/vue-cookies 安装: npm install vue-cookies --save 使 ...
- js 数组循环和迭代
(之前一直没怎么注意数组循环,今天做一道题时,用到forEach循环发现它并没有按照我想象的样子执行,总结一下数组循环) 一.第一种方法就是for()循环 for( var index = 0; ...
- only_full_group_by问题而引发的对group by的深入思考
问题背景 最近在项目中使用mysql的group by进行分组查询的场景比较多,其中一次遇到了一个问题,即在开发环境执行一个如下sql时是正确且可执行的, select a,b,max(c) from ...