centos7搭建python的web环境

安装以下

python3 + nginx + virtualenv + uwsgi + django

安装前准备

1、python3和nginx的安装包

在这里插入图片描述

2、更新yum源
[root@localhost admin]# yum clean all
[root@localhost yum.repos.d]# yum makecache

说明:更新yum是因为可以安装到最新的rpm包。

步骤1:安装python3

1、 安装python所需要的RPM包

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel  libffi-devel gdbm-devel db4-devel libpcap-devel gcc make python-devel

2、新建文件夹

mkdir /usr/local/python3

3、解压文件

tar -zxvf Python-3.7.4.tgz

4、进入文件夹

cd Python-3.7.4

5、编译安装

[root@localhost Python-3.7.4]# ./configure --prefix=/usr/local/python3
[root@localhost Python-3.7.4]# make&&make install

6、备份python2

 mv /usr/bin/python /usr/bin/python.bak

7、创建python软连接

ln -s /usr/local/python3/bin/python3 /usr/bin/python

8、创建pip软连接

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

9、检查是否安装成功

python -V   
pip -V

10、修复升级python引起的问题

1)vim /usr/libexec/urlgrabber-ext-down
打开以后,找到一个/usr/bin/python的,后面加上2.7就可以了也就是/usr/bin/python2.7
2)vi /usr/bin/yum
做法和上面的一样,也是改成python2.7就可以了!
3)vim /usr/bin/firewall-cmd, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2 -Es
4)vim /usr/sbin/firewalld, 将#!/usr/bin/python -Es 改为 #!/usr/bin/python2 -Es (这一步是针对于防火墙报错,进行的修改)

安装nginx

1、获取nginx-1.16.1

wget http://nginx.org/download/nginx-1.16.1.tar.gz

2、下载完成后,执行解压命令:

[root@localhost admin]# tar -zxvf nginx-1.16.1.tar.gz 

3、 配置安装环境

[root@localhost nginx-1.16.1]# ./configure  --prefix=/usr/local/nginx
[root@localhost nginx-1.16.1]# make && make install

4、启动nginx

[root@localhost nginx-1.16.1]#  /usr/local/nginx/sbin/nginx
说明:没有任何报错即是安装成功。

5、停止或者重新载入nginx

$ /usr/local/nginx/sbin/nginx -s stop
$ /usr/local/nginx/sbin/nginx -s reload

6、加载配置文件

$ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

7、测试配置文件是否正常:

$ /usr/local/nginx/sbin/nginx -t

8、创建nginx的软连接

ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx

9、编辑配置文件
在这里插入图片描述
在下面添加1,2,3,注意要把注释去掉

location / {
   root   html/myproject/love;  #1
   include uwsgi_params;   #2
   uwsgi_pass 127.0.0.1:8000; #3
   index  index.html index.htm;
}

10、新建项目文件夹

mkdir /usr/local/nginx/html/myproject

安装虚拟环境

[root@localhost myproject]# pip install virtualenv

结果
在这里插入图片描述

[root@localhost venv]# virtualenv venv
bash: virtualenv: 未找到命令...

解决方案:添加全局环境变量

[root@localhost python3]# vim /etc/profile
添加一行代码到结尾:PATH=$PATH:/usr/local/python3/bin
[root@localhost python3]# source /etc/profile
[root@localhost python3]# echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/root/bin:/usr/local/python3/bin

安装Django

pip install django

结果
在这里插入图片描述

安装 uwsgi

 pip install uwsgi
 ln -s /usr/local/python3/bin/uwsgi  /usr/bin/uwsgi

结果
在这里插入图片描述

新建虚拟环境

[root@localhost myproject]# virtualenv venv

结果
在这里插入图片描述

[root@localhost bin]# source /usr/local/nginx/html/myproject/venv/bin/activate
[root@localhost myproject] django-admin startproject love
(venv) [root@localhost love]# python manage.py runserver 0.0.0.0:8000

报错
ModuleNotFoundError: No module named ‘django’
在这里插入图片描述
解决方法

[root@localhost love]# vi manage.py 
添加以下内容:
sys.path.append('/usr/local/python3/lib/python3.7/site-packages')

再次输入

[root@localhost love]# python manage.py runserver 0.0.0.0:8000

报错
raise ImproperlyConfigured(‘SQLite 3.8.3 or later is required (found %s).’ % Database.sqlite_version)
在这里插入图片描述
解决方法

[root@localhost love]# vi settings.py 
注释下面两行内容或者升级sqlite3
DATABASES = {
'default': {
    #'ENGINE': 'django.db.backends.sqlite3',
    #'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

创建配置文件config.ini

在这里插入图片描述
内容如下

[uwsgi]
chdir= /usr/local/nginx/html/myproject/love
module=love.wsgi
master= true
processes= 3
socket = 127.0.0.1:8000
chmod-socket= 666
vacuum= true
enable-threads = true
daemonize=uwsgi.log

重新加载nginx配置文件

[root@localhost love]# nginx -c /usr/local/nginx/conf/nginx.conf
[root@localhost love]# nginx -s reload
[root@localhost love]#  uwsgi --ini config.ini

结果
在这里插入图片描述
在这里插入图片描述
整个部署环境就此就结束啦,后续添加自启动功能。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
搭建视频点播服务器需要一台运行CentOS 7操作系统的服务器以及相关的软件和配置。 首先,确保服务器已连接到互联网,并具备基本的网络设置。接下来,需要安装LAMP(即Linux、Apache、MySQL和PHP)或LEMP(即Linux、Nginx、MySQL和PHP)服务器堆栈。这些服务将提供Web服务器功能。 在CentOS 7上安装Apache或Nginx,并确保它们能够正常运行。随后,按照官方文档的指导,安装和配置MySQL或其他数据库系统。 安装完服务器堆栈和数据库后,接下来需要安装适合视频点播的软件。一种常用的选择是使用FFmpeg,它是一个功能强大的开源多媒体处理工具。按照官方文档的指示,安装和配置FFmpeg。 然后,需要将视频文件和相关的媒体文件上传到服务器上。可以通过FTP客户端或其他适合的工具将文件传输到指定目录。确保文件权限正确设置,以便Web服务器能够正常访问和提供这些文件。 接下来,需要编一个用于视频点播的Web应用程序。这可以使用PHP、Python、Ruby等编程语言实现。在应用程序中,可以使用FFmpeg等工具来处理和播放视频文件。通过实现相关功能,例如视频列表显示、搜索和分享,为用户提供一个良好的点播体验。 最后,配置Web服务器,确保应用程序可以在具备域名或IP地址的服务器上进行访问。通过设置适当的虚拟主机和URL重规则,提供友好的URL,并确保视频点播功能能够正常工作。 通过以上步骤,你可以在CentOS 7上搭建一个视频点播服务器。请注意,这只是一个基本搭建指南,具体的步骤和配置可能因应用程序和需求而异。建议参考官方文档和相关教程,以获得更详细和准确的指导。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值