第一课:Ubuntu16.04里django的配置和安装 ---入门安装到hello-work-2018-08-01

引子: 最新的ubuntu16.04安装django 2.1 python 环境是3.5

安装setuptool

sudo apt-get install python-setuptools

ubuntu安装pip命令

python3:  sudo apt-get install python3-pip
python2: sudo apt-get install python-pip

安装djongo

pip install Django==2.0.8

title
title

发现无法装第一个最新的

那么我们安装下一个

pip install –pre django

title

安装模块成功,进入python 加载

python
import django
django.get_version()

title

安装mysql

Django安装完成之后,接着我们需要安装与他进行合作网站开发的mysql.在ubuntu中安装mysql比较简单,直接使用命令行即可安装,在这里我们使用mysql5.6

sudo apt-get install mysql-server
sudo apt-get install mysql-client

“`不过一般是安装完成mysql-server的过程中,他会自动把mysql-client安装上.在安装中间,他会提示你让你输入root用户的密码,这个密码要记住.

安装完成后,我们测试一下打开我们的数据库搂一眼.“`

mysql -u root -p 
//回车之后,输入密码

能够进入之后,就表明我们的数据库安装完成了.

安装Django和mysql连接的驱动

当安装完成Django和Mysql之后,如果想要Django能够找到mysql,我们就需要安装一个驱动,这样来安装:

apt-get update // 更新apt-get源
sudo apt-get install python-mysqldb

安装完成之后,就表明我们的变成环境就搭建完成了,现在ngix暂时使用不到,所以我们后面再讲述如何安装ngix.
安装成功
title

Hello World

1:新建项目

首先我们需要将工作路径切换到我们希望建工程的目录下:

cd xxxx
本人这里是cd /var/www/djongo

1
然后,在该目录下执行下面的命令:

django-admin startproject HelloWorld

操作如图

title

这里的HelloWorld就是我们项目的名称.下面我们来看一下新建项目的目录结构.
安装tree 来方便查看

sudo apt-get install tree

安装以及查看tree 如图
title

title

下面来介绍一下各个目录和文件的作用.

HelloWorld: 项目的容器
manage.py: 命令行工具,用于和Django交互
HelloWorld/init.py:空文件,告诉python,该目录是一个Python包
HelloWorld/setting.py : 对该项目的配置文件
HelloWorld/urls.py : 该项目的url声明
HelloWorld/wsgi.py : 服务器入口

运行服务器

当我们的项目新建完成之后,我们就需要测试一下该项目有没有创建成功,也就是能不能运行起来.

python manage.py runserver
title
提示你有东西没装:
安装下
python manage.py migrate
title

浏览器运行测试

本地访问

当我们的服务器启动成功之后,我们就在我们的浏览器中输入http://127.0.0.1:8000,下面我们来看一下运行成功后的浏览器输出.

外网如何访问?

命令修改:

Python manage.py runserver
改为
python manage.py runserver 0.0.0.0:80

外网和127.0.0.1都能够访问

可能会出现DisallowedHost at / Invalid HTTP_HOST
如图title
title

header:
DisallowedHost at /
Invalid HTTP_HOST header: ‘x:8000’. You may need to add u’10.211.55.6’ to ALLOWED_HOSTS.

Request Method: GET
Request URL: http://x:8000/
Django Version: 1.10.4
Exception Type: DisallowedHost
Exception Value:
Invalid HTTP_HOST header: ‘10.211.55.6:8000’. You may need to add u’10.211.55.6’ to ALLOWED_HOSTS.
Exception Location: /usr/lib/python2.7/site-packages/django/http/request.py in get_host, line 113
Python Executable: /usr/bin/python
Python Version:

原因分析和解决办法

1 以上时我访问请求的时候出现的,原因在于Django框架中的创建的一个项目的时候,
2 跑下这个命令:Python manage.py runserver ip:8000 (ip是我阿里云的ip)
3 然后在我本机的浏览器中写入上述IP(ip是我阿里云的ip)和端口请求过去:http://ip:8000
4 于是就出现了最上面的那个问题;
5 于是就去(django-admin.py startproject project-name)创建的项目中去修改 setting.py 文件:
ALLOWED_HOSTS = [‘*’] #在这里请求的host添加了*
6 于是就成功的访问到了Django的项目了;

操作代码:
找到 settings.py

cd /var/www/djongo/HelloWorld/HelloWorld
vi settings.py

找到 这一行
**把ALLOWED_HOSTS = []改为
ALLOWED_HOSTS = [‘‘]*

操作截图
title
title

再次来到/var/www/djongo/HelloWorld 启动服务
(注意路径 只有/var/www/djongo/HelloWorld 下 有 mamage.py)
title

本地和外网均可访问配置成功

title

重新部署

当我们修改了代码之后,服务器会自动检测其代码的改变,所以,不需要重新启动服务器了.

在后台运行 django:

nohup python manage.py runserver 0.0.0.0:9000 &

nohup用途:不挂断地运行命令
ps:&可以不写

查看后台某个进程:
ps -ef|grep “python”
通过9000端口来访问
title

前台访问 发现后台已经可以接手到请求

这里显示 favicon.ico 是默认的请求收藏夹图标的请求
可以设置忽略。 类似nodejs 中的设置忽略

title

写在后面

好了,基本的环境我们已经做的差不多了,后面我们将会学习使用Django.最后,完成一个网站的开发.

再美一下

title

title

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值