当前位置:首页 > 其他 > centos7 升级Python3.6.x 以及用Django搭建第一个项目

centos7 升级Python3.6.x 以及用Django搭建第一个项目

原创 2017-12-19 其他 1973

教程之前 还是先来一句引战的话:PHP是世界上最好的语言!

好了,接下来看看最近很火的Python安装和Django搭建项目

首先 创建一个虚拟机 centos7 的环境

不建议用centos6来玩Python3.6 别问我为什么 有兴趣的话 你可以试下

图片1.jpg

因为centos7系统安装的是Minimal 所以要先更新一些前置

图片2.png

 但是当yum update的时候出现上面这个错误,这时候就要去修改下ONBOOT 改成yes 位置在

# vi /etc/sysconfig/network-scripts/ifcfg-enxxxx

 具体名可以用tab键选中

图片3.png

改成yes后重启虚拟机 登录后可以用 ping baidu.com 看看网络是否正常

Minimal 版本的 执行3个前置命令

# yum update
# yum -y groupinstall base
# yum -y install gcc gcc-c++ make automake openssl openssl-devel ncurses ncurses-devel pcre pcre-devel curl-devel lrzsz patch vixie-cron tcl dstat bison flex screen \telnet iftop bash iotop strace mtr sysstat lsof bind-utils telnet rsync libtool libtool-ltdl libtool-ltdl-devel ntp perl-libwww-perl \libpcap libpcap-devel libxml2.x86_64 libxml2-devel.x86_64 bc libpng libpng-devel libjpeg-turbo libjpeg-turbo-devel freetype freetype-devel zlib zlib-devel libmcrypt libmcrypt-devel

如果过程中出现y/d/N 的对话,直接输入y就行了。

安装可能要一些时间。

.....

安装好了的话这时候我们进入主题  先看下目前系统的python版本

图片4.png

Centos 7 默认的python版本是2.7

然后我们升级官方最新版的3.6

先去官网看下最新版本 https://www.python.org/downloads/

找到

图片6.png

我这边用的是xz版本的

把下载链接复制出来 用 wget 来下载

图片5.png

下载后 我这里是解压到/usr/local/下

# tar xvf Python-3.6.3.tar.xz -C /usr/local/

然后在解压后的3.6.3目录下编译

# ./configure
# make && make install

都好了之后呢 看看现在的python版本 还是2.7.5,别着急 这样做就行了

先使用# ls -al /usr/bin/python 查看下这个软链接指向的文件

然后将原来的python软连接重名 

# mv /usr/bin/python /usr/bin/python2.7.5

(这个名称可以自行定义)

接着

# ln -s /usr/local/bin/python3.6 /usr/bin/python

这时候再看看 python -V 的版本是不是变成最新的了

Python到这里搞定 接下来就是django了

———————————————————————————————————————————————

特别备注下  因为默认python的更改 所以yum可能会报错

# vim /etc/bin/yum

第一行的 /usr/bin/python  改成 /usr/bin/python2.7 保存即可

为了安全  可以重启linux继续下面的操作

这里就开始Django了

既然前面我们已经把python搞定了 那么我们就可以直接用 pip 命令直接安装 django了

# pip3 install Django==2.0

等待安装好之后  进入python

# python
>>>import django

如果没有报错 就说明django安装成功

然后就是创建项目了

可以在 /home 下 mkdir一个 wwwroot

然后进入 /home/wwwroot/ 执行

# django-admin startproject myapp

这样就在wwwroot下面创建了一个myapp的项目文件夹

进入myapp项目,执行

# python manage.py runserver

这时候可能会报错 比如

图片7.png

没关系  少什么装什么

直接装sqlite3

# yum install sqlite-devel

图片8.png

执行安装sqlite3 过程中如果出现上图错误 不要慌 【如果没有出现直接跳过】

#  vim  /usr/libexec/urlgrabber-ext-down

跟修改yum 一样 把第一句的 /usr/local/python 改成 /usr/local/python2.7 保存后继续执行上面的sqlite3安装

安装成功后 再次到 /usr/local/Python-3.6.3/ 下 重新编译python

# ./configure
# make && make install

OK之后 重新回到myapp的项目下 执行

# python manage.py runserver

当你看到这个界面 说明你的python 已经运行成功!!!

恭喜你!!!

图片9.png

项目到这里就搭建好了 那要怎么在浏览器上访问呢?因为linux是无视图版本的 所以我们得依靠你的电脑来访问

首先确保你现在的虚拟机环境网络是用NAT方式 然后用 ifconfig 看下你现在的局域网ip

default.png

关闭centos7的防火墙

# systemctl stop firewalld.service

因为上面我们已经运行了myapp这个项目 用Ctrl+C或者Ctrl+Z先退出 确保安全可以用lsof -i:8000命令看看8000端口进程是否被占用 如果被占用 可以kill -9 杀死

然后到myapp项目下 执行

# python manage.py runserver 0:8000

切换视线到你的电脑

在电脑上打开浏览器 输入 http://你的局域网ip:8000

比如我这边打开的是这样的

QQ截图20171220140037.png

显然这是一个错误的页面 提示大概说的是访问的IP不在授权范围 怎么办呢? 不要急 到Django创建的myapp项目下一个同名myapp目录下  打开settings.py文件

找到ALLOWED_HOSTS = [] 这一行 换成 ALLOWED_HOSTS = ['*']

p_portrait.png

保存后返回到myapp项目的目录下 继续

# python manage.py runserver 0:8000

这时候切换到你的电脑桌面浏览器上 继续访问刚才的地址 这时候的页面应该是这样的!

QQ截图20171220140716.png

至此 被列入教科书的python语言 你已经入门了!

说不定以后年纪大了还能回老家当个计算机老师 或者开个培训班?

2018年起,Python 列入全国计算机等级考试

除了中小学的变动之外,教育部考试中心于 2017 年 10 月 11 日发布全国计算机等级考试(NCRE)体系调整的通知。

0294c1b689b14c20ba9babb6256a397a.jpeg

bed0c9d4b20c4b8c877be84e100dc99d.jpeg

ec2db800ee4a41f3b416fa836af2b19b.jpeg


另外 想看更多关于运维教程的朋友们 可以到 https://my.oschina.net/longquan/

专业的运维博客,你值得拥有!

我只是业余的!

声明:版权所有,违者必究 | 如未注明,均为原创 | 本网站采用 BY-NC-SA 协议进行授权

转载:转载请注明原文链接,违者必究 - :https://www.wolfcode.net/info/95/

分享给朋友:

相关文章

【年度重磅】阿里淘系全年技术总结黑皮书,1500页免费下载!

淘系技术将2020一整年的精华内容梳理合并,重磅推出【淘系技术2020技术年货】。在这本书中,你将看到:各技术栈下时新前沿的技术讲解与方法技巧、淘系技术大牛的职场成长经验&学习问答实录、年度精选技术人员必读书单、淘系经典开源项目介绍、2020淘系顶会 paper 全文。

百度上线“开发者搜索”,程序员专用的搜索平台

无意中发现了一个地址:https://kaifa.baidu.com百度近期上线的“开发者搜索”功能,看来是给程序员专门开发的一个搜索功能板块,目前测试了页面还算清爽,没有广告,后期未知!有待观察,有需要的小伙伴可以进行深度使用测试~~

纪念我们即将逝去的CentOS

CentOS 官方发文称 CentOS Stream 才是 CentOS 项目的未来,在接下来的一年里,将逐步把开发工作的重心从 CentOS Linux 往 CentOS Stream 转移。官方已明确表示未来不会再发布由 RHEL 代码编译而成的 CentOS,意思就是无须再对 Cen

为什么现在不建议个人站长做网站选择国内备案了?

除个别地区外,大多数国内的服务器相对比较便宜,但是便宜的代价就是需要备案,备案相对来说也有一定的好处,比如网络相对比较稳定(老观念)、一些国内比较大型的广告联盟可以申请、还有SEO方面的收录会相对比较快等等~但是缺点也很明显,比如备案时间长,突击审查时遇到不符合某些条条框框的规定后要重新整改,个人增

Golang+GoVCL开发的Excel转Json小工具:GoExcelToJson

工作开发中需要用到的一些功能,其实网上有很多,但是总觉得数据丢到网路上不安全,所以就自己写了一个小工具!

Docker 禁止美国“实体清单”主体使用,Docker 开源项目不受影响

Docker 公司最新的服务条款8月13日生效。条款引起关注的地方简单来说就是,Docker 公司提供的服务,禁止美国“实体清单”上的实体使用。Docker 公司相关条款写道:1.2 服务的所有使用均须接受这些条款。通过访问或使用服务或服务上提供的任何内容或服务,即表示您同意这些条款。如果

IEEE Spectrum 2020年编程语言排行:PHP依然进不了前10

IEEE Spectrum编程语言排行榜一年发布一次,排序是来自10个重要数据源的综合,例如IEEEXplore,GitHub,CareerBuilder等等2020年的前10上榜语言Python稳居首位,Go语言快速上升,PHP自从2019年就已经没有出现在前10榜单中了。2019年的前10上榜语

MySQL8.0.17版本之后,integer类型字段将不再显示长度

最近升级了最新版的MySQL8.0.20发现一个很神奇的现象:字段只要是integer类型的,不管你设置成多少,保存之后都会变成0...这就很诡异了,工具问题?然后去mysql中直接修改,也是如此。没办法只能去官方找答案了。从官方的解释来看得知从8.0.17版本开始,TINYINT, SMALLIN