Django项目nginx部署操作

大家好,接着上次写的水果生鲜的项目的继续写,这篇是关于Django醒目nginx部署操作

下面这些操作都在Linux虚拟机上进行

一、安装python需要的依赖包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

二、python解释器安装

1.下载python解释器
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

提示:
进入opt目录下进行下载,
在这里插入图片描述
在这里插入图片描述
2.解压压缩包
tar -xvJf Python-3.5.4
提示: 在当前opt 目录下进行解压
在这里插入图片描述

3.编译
./configure prefix=/usr/local/python3
提示:

  • ./configure : 将解压的文件里面的源文件哪些需要编译,会形成编译列表进行编译,

  • prefix=’xxx’,将编译好的二进制文件放到指定的目录下。源代码安装默认一般放置在
    usr/loacl/自己创建软件名称即可。

  • 进入 Python3.5.4目录下执行上面命令
    在这里插入图片描述
    在这里插入图片描述
    4.安装
    make && make install
    提示

  • make : 按照编译清单中的源代码进行编译生成二进制文件,

  • make install: 将生成好的二进制文件安装到 /usr/local/python3中。

  • 查看生成的目录 /usr/local/python3

  • 注意:在当前目录下执行make && make install 命令
    在这里插入图片描述
    5.创建软连接(添加环境变量)
    ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
    提示:
    (1)、创建软连接到 /usr/bin/python3(名字)–>对应windows的环境变量path,查看环境变量 echo $PATH
    (2)、进入到 /usr/local/python3/bin/ 对 python3 进行创建软连接
    在这里插入图片描述
    (3)、测试是否成功
    在这里插入图片描述

三、安装项目所需要的包

1.安装python扩展包
yum install python-devel
在这里插入图片描述
2.安装项目依赖包
pip3 install -r所有依赖包的路径
提示

  1. 先从项目中导出所有的安装包
    在这里插入图片描述
  2. 复制到contos 中
    在这里插入图片描述
    在这里插入图片描述
    3.迁移项目到contos下
    (1)收集静态
    在这里插入图片描述
    在这里插入图片描述
    (2)修改主机和app应用注册方式
    在这里插入图片描述
    (3)删除项目中的.idel、pychae
    在这里插入图片描述

(4)将项目复制到contos 中。
在这里插入图片描述
(5)启动运行

先关闭防火墙
systemctl stop firewalld 关闭防火墙
②启动项目
Python3 manage.py runserver 0.0.0.0:8000
在这里插入图片描述
(5)访问
在这里插入图片描述

四、安装uwsgi模块

1.下载 uwsgi 模块
pip3 install uwsgi
提示: 下载的位置在 /usr/local/python3/bin/
在这里插入图片描述
2.创建软连接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

3.使用uwsgi 启动项目
uwsgi --http 10.10.16.229:8000 --file shop/wsgi.py --static-map=/static=static

uwsgi 模块名称 
--http 协议
10.10.16.229:8000 主机端口
--file uwsgi要使用的解析文件,一般django自己创建
--static 静态目录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.使用配置文件启动uwsgi服务
(1)创建目录和配置文件
进入到opt目录下创建scripts目录,在scripts目录下创建 uwsgi.ini 配置文件
在这里插入图片描述
(2)设置配置

配置内容如下

[uwsgi]

chdir=/opt/OurBlog   #项目目录

module=OurBlog.wsgi:application  #指定项目的application

socket=/opt/script/uwsgi.sock  #指定sock的文件路径

workers=5  #进程个数

pidfile=/opt/script/uwsgi.pid

http=192.168.2.69:8000  #指定IP端口

static-map=/static=/opt/OurBlog/static  #指定静态文件

uid=root  #用户

gid=root  #组

master=true  #启用主进程

vacuum=true  #自动移除unix Socket和pid文件当服务停止的时候

enable-threads=true #启用线程

thunder-lock=true #序列化接受的内容,如果可能的话

harakiri=30 #设置自中断时间

post-buffering=4096 #设置缓冲

daemonize=/opt/script/uwsgi.log #设置日志目录

(3)启动服务
uwsgi --ini uwsgi.ini
在这里插入图片描述
提示:
a.杀死uwsgi服务 killall -9 uwsgi
b.查看uwsgi服务 ss -tnl
在这里插入图片描述
在这里插入图片描述

五、配置nginx

(1)下载nginx 压缩包
wget -c https://nginx.org/download/nginx-1.12.2.tar.gz
在这里插入图片描述
提示:下载到opt目录下
(2)解压
tar -zxvf nginx-1.12.2.tar.gz
在这里插入图片描述
(3)编译
在这里插入图片描述
(4)安装
Make && make install
提示默认将nginx 安装到了 /usr/local/ 下
在这里插入图片描述
(5)创建软连接
在这里插入图片描述
(6)启动nginx
在这里插入图片描述
在这里插入图片描述
(7)修改nginx 配置文件
a.找到 nginx.conf
cd /usr/local/nginx/conf
在这里插入图片描述
b.备份配置文件(防止弄错后不能恢复)
在这里插入图片描述
c.修改配置
在这里插入图片描述

	http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"'; 日志的格式

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
server {
        listen       80;
        server_name  Qshop; 服务的名称

        charset utf-8; 编码格式

        access_log  logs/host.access.log  main; 访问日志

        gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php application/json text/json image/jpeg image/gif image/png application/octet-stream;  访问内容的类型

        error_log /var/log/nginx/error.log error; 错误日志,默认没有,需要手动创建

        location / {
             include uwsgi_params; 加载uwsgi_params
             uwsgi_connect_timeout 30; 连接的超时时间 不要加冒号不要加冒号不要加冒号 
             uwsgi_pass unix:/opt/script/uwsgi.sock; uwsgi.sock通讯的文件地址
        }

        location = /static/{
            alias /opt/Qshop/static; 静态文件的目录
            index index.html index.htm;
        }

创建 nginx/error.log 目录和文件
在这里插入图片描述
(8)杀死nginx服务器重启
在这里插入图片描述
重启nginx
在这里插入图片描述
最后到网页上去访问:
在这里插入图片描述

  • 7
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值