1.升级python到2.7版本(通过源码包重新安装一个2.7版本的python):

wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz

tar -zxf Python-2.7.9.tgz

./configure --prefix=/usr/local/python27/

make && make install

which python(查看可执行文件的位置)

ln -s python2.7 python(建立软链接)

2.让yum使用旧版2.6版本的python

vim /usr/bin/yum

把首行注释修改为 #!/usr/bin/python2.6

3.安装pip

wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate

python get-pip.py

提示错误:zipimport.ZipImportError: can't decompress data; zlib not available

此时需要:

a-安装依赖zlib、zlib-devel

b-重新编译python:

./configure

在这里把Modules/Setup文件中的454行左右的,

#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

去掉注释

zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz

make && make install

重新做软链接,让系统路径的python指向新编译的python2.7版本

python get-pip.py

又失败了,提示:pip is configured with locations that require TLS/SSL

需要安装2个依赖:yum -y install openssl openssl-devel

再编译安装一次。。。。。

python get-pip.py(终于成功!)

pip被安装在python的可执行文件的同一目录。

做软链接 ln -s /usr/local/python27/bin/pip /usr/bin/pip

4.安装虚拟环境virtualenv和flask

pip install virtualenv(安装)

virtualenv --no-site-packages venv(建立虚拟环境,不安装任何系统中的第三方包)

5.安装nginx

yum install nginx(提示没有可用的源)

解决方法:

安装EPEL源(yum install epel-release)

又报错:Cannot retrieve metalink for repository: epel. Please verify its path and try again

解决方法:

编辑/etc/yum.repos.d/epel.repo 取消baseurl的注释,把mirrorlist注释掉。

设置nginx开机启动:

chkconfig nginx on

开启80端口,并重启iptables:

vim /etc/sysconfig/iptables   然后一定在第一个-A的行的上面一行添加一行,不然会失败:-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

service iptables restart

启动nginx:

service nginx start

6.安装gunicorn

pip install gunicorn(安装)

gunicorn -w 4 -b 127.0.0.1:端口号 文件名:app(直接运行gunicorn)

vim /etc/nginx/conf.d/default.conf(配置nginx):

server {

listen 80;

location / {

proxy_pass http://127.0.0.1:888; # 这里是指向 gunicorn host 的服务地址

proxy_set_header Host $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

}

}

重启nginx,ok!可以直接从80端口访问网站。

7.使用supervisor

最后一步,用进程管理工具supervisor把gunicorn作为服务来管理:

pip install supervisor

echo_supervisord_conf > supervisor.conf   # 生成 supervisor 默认配置文件

vim supervisor.conf                       # 修改 supervisor 配置文件,添加 gunicorn 进程管理

添加:

[program:入口文件名]

command=/root/aff/venv/bin/gunicorn -w4 -b0.0.0.0:888 入口文件名:app

directory=/root/aff

supervisord -c supervisor.conf(启动supervisor)

supervisorctl shutdown (关闭supervisor)

再启动时出现错误:Shut this program down first before starting supervisord.

解决办法:

unlink /tmp/supervisor.sock

再启动。

supervisor的基本使用命令

supervisord -c supervisor.conf                             通过配置文件启动supervisor

supervisorctl -c supervisor.conf status                    察看supervisor的状态

supervisorctl -c supervisor.conf reload                    重新载入 配置文件

supervisorctl -c supervisor.conf start [all]|[appname]     启动指定/所有 supervisor管理的程序进程

supervisorctl -c supervisor.conf stop [all]|[appname]      关闭指定/所有 supervisor管理的程序进程

8.安装mysql:

yum install -y mysql-server mysql mysql-devel (安装)

service mysqld start (启动)

chkconfig mysqld on (开机自启动)

mysqladmin -u root password 'new-password' (给root设置密码)

------------------------------------------

9.vim配置

vim配置(/etc/vimrc):

set nu(显示行号)

set expandtab(把tab转成空格)

set ts=4(一个tab等于4个空格)

set softtabstop=4(按退格时删除4个空格)

set autoindent(自动缩进)

解决vim没有颜色的方法:

原因是securecrt使用的终端是VT100,而vim的配置中只有终端是xterm才有颜色。

解决方法(修改配置文件):

vim ~/.bashrc

TERM=xterm

export TERM

然后用source命令重载一下配置文件。

10.重建数据库

直接使用flask的数据库模型重建:

python admin.py shell

from admin import db

db.create_all()

linux部署python web_在linux上部署web环境相关推荐

  1. 如何优雅的部署Python应用到Linux服务器?

    文章目录 1 前言 2 安装Python3环境 2.1 安装所需的编译环境 2.2 下载Python源码包 2.3 解压 python-3.9.5 源码包 2.4 安装 python3 2.5 设置软 ...

  2. CentOS Linux release 7.8.2003 系统上部署KVM系统

    CentOS Linux release 7.8.2003 系统上部署KVM系统 1.升级内核操作 yum update -y kernel kernel-firmware reboot 2. 安装必 ...

  3. Linux 安装python 3.8(Linux 的版本为 Centos 7)

    Linux 安装python 3.8(Linux 的版本为 Centos 7) 前言:喜欢傻瓜式复制粘贴的,不会思考安装过程中报错的,不建议看这个,可以去看看其他的,看了安装不了,又喷人,自己不会,解 ...

  4. Asp.Net Web Api 部署------在云服务器IIS上部署Web Api程序

    Asp.Net Web Api 部署------在云服务器IIS上部署Web Api程序 本人Web Api程序框架选择的是.Net 5.0 一.在服务器上安装运行时RunTime,.Net 5 运行 ...

  5. 云上部署oracle rac,在青云上部署oracle rac全过程

    在青云上部署oracle rac全过程 发布时间:2020-08-17 03:16:10 来源:ITPUB博客 阅读:116 作者:datapeng 一 准备 1.1服务器基本信息 节点 Cpu 内存 ...

  6. 在Windows服务器上搭建WEB环境MySQL 5.7+JDK 1.8+Tomcat 8.5并使用war包进行部署+简单运行jar程序+Tomcat Manager快速部署

    文章目录 Archive方式安装MySQL 补充: 卸载后重装MySQL57(可选) 常见问题: 卸载后重装MySQL8.0(可选) 参考文档 附only_full_group_by错误解决方案 参考 ...

  7. linux 升级python 3.5,Linux下升级Python到3.5.2版本

    本文主要介绍在Linux(CentOS)下将Python的版本升级为3.5.2的方法 众所周知,在2020年python官方将不再支持2.7版本的python,所以使用3.x版本的python是必要的 ...

  8. Linux下python的命令,linux下python相关命令

    若本机已安装python2,尽量不要动现有的python2,额外安装python3即可. 1.安装python3.6(centos下安装python3自带pip和setuptools) # 安装依赖环 ...

  9. linux系统或者是在服务器上安装anoconda环境和虚拟环境配置

    本文主要是关于在服务器上进行anoconda的安装并进行虚拟环境的配置. 1.下载anoconda的sh文件 输入命令:wget 网址 2.执行sh文件进行安装 ./Anaconda3-5.3.0-L ...

最新文章

  1. 深入理解PHP原理之变量作用域
  2. const 修饰指针
  3. Web Service 之WSDL文档简介
  4. 他花了一个月,使用MicroPython将自己装进OLED里面
  5. 送你了,思科设备基础配置命令大全(一),赶紧收藏......
  6. Linux chmod命令小贴士
  7. 9.26-mkdir,tree,touch命令
  8. 进程相关概念、C程序的空间分配
  9. Java最新大厂面试真题总结,瞬间高大上了!
  10. 前端学习(1884)vue之电商管理系统电商系统之实现侧边栏的折叠和展开
  11. python套用word模板_如何使用Python批量创建Word模板
  12. java为什么不能输入钢筋符号_input.nextDouble();找不到符号
  13. 浅谈ztree节点的增加和获取
  14. UVa1592 数据库(摘)
  15. 英语语法快速入门1--简单句(附思维导图)
  16. Flask 创建app 时候传入的 static_folder 和 static_url_path参数理解(1ni)
  17. 使用BPEL创建Web服务组合
  18. 【秋无痕作品】Windows7SP1(32位)+XPSP3集成安装版V201108
  19. 设断点报错:Frames are not available
  20. [leetcode] Ugly Number II

热门文章

  1. 沐猿而冠 -教育-读书笔记(一)
  2. 【学习笔记】ListView初识
  3. 串口速度,RS232与MAX232的区别
  4. 消息(5)——WSE增强的web服务套件,MTOM附件
  5. 计算机基础与python安装
  6. 6.3.4 新的_Bool类型
  7. 网页编程技术三(H5中表格的用法)
  8. POJ 3278 Catch That Cow
  9. POJ3246-Balanced Lineup,好经典的题,做法和HDU-I hate it 一样~~
  10. javaweb--HTTP状态码