centos7下部署Django(nginx+uWSGI+Python3+Django)

部署代码后uWSGI需要重新启动,关闭系统防火墙或者开放端口

  • 系统版本:CentOS7.0
  • Python版本:Python3.6.3
  • Django版本:2.0.5
  • uWSGI版本:2.0.17
  • nginx版本1.4.4

    1.安装需要的依赖

    ```shell

    yum install wget openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

yum install libxml*

yum -y install gcc automake autoconf libtool make gcc-c++ glibc libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel pcre pcre-devel libmcrypt libmcrypt-devel cmake

```

安装libxml模块是为了让uwsig支持使用“-x"选项,能通过xml文件启动项目

2.编译安装python3

进入目录,依次执行以下命令:

wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
#下载完成后,执行解压命令:
tar -zxvf Python-3.6.3.tar.gz
cd Python-3.6.3
#将python3安装到/usr/local/python3/路径下
./configure --prefix=/usr/local/python3
make && make install
#创建软连接
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

3.安装Django和uWSGI配置启动项目xml文件
pip3 install django
pip3 install uwsgi

创建uWSGI软连接:

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3

将你的Django项目放到你想放的路径下,并在项目里新建 django_study.xml,内容如下:

<uwsgi>
    <!-- 内部端口,自定义 -->
    <socket>127.0.0.1:8000</socket>
    <!-- 项目路径 -->
    <chdir>项目的路径</chdir>
    <module>django_study.wsgi</module>
    <!-- 进程数 -->
    <processes>4</processes>
    <!-- 日志文件 -->
    <daemonize>uwsgi.log</daemonize>
</uwsgi>
4.安装nginx和配置nginx.conf文件
  • 安装nginx

    wget http://nginx.org/download/nginx-1.4.4.tar.gz /usr/local/src
    cd /usr/local/src
    tar xf nginx-1.4.4.tar.gz
    cd nginx-1.4.4
    创建用户www和用户组www
    groupadd www
    useradd -g www www
    ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --without-http-cache --with-http_ssl_module --with-http_gzip_static_module --with-ipv6
    make && make install
  • 配置nginx
    server {
    #暴露给外部访问的端口
    listen 80;
    server_name localhost;
    charset utf-8;
    location / {
        include uwsgi_params;
        #外部访问80就转发到内部8000
        uwsgi_pass 127.0.0.1:8000;
    }
    }
    #检查配置文件是否有误
    /usr/local/nginx/sbin/nginx -t

    提示nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful的话说明配置文件无误,启动nginx

    /usr/local/nginx/sbin/nginx

    5.访问项目页面

    进入Django项目路径,执行以下命令:

    uwsgi3 -x django_study.xml

原文地址:https://www.cnblogs.com/caiji/p/9056638.html

时间: 2024-08-01 11:33:18

centos7下部署Django(nginx+uWSGI+Python3+Django)的相关文章

Centos7下部署Nginx

一.续Centos7下部署Node,Nginx安装部署: Nginx选择安装的是编译版(附下载地址:https://nginx.org/download/),根据自己的系统环境选择. 1.进入保存下载文件的路径,cd进入文件保存路径,命令: cd /usr/local/src 2.下载文件,我这选择最新版本nginx-1.13.11.命令: wget https://nginx.org/download/nginx-1.13.11.tar.gz 3.解压到特定文件夹下,进行解压,执行命令: ta

Python3+django+nginx+uwsgi使用场景部署

1 环境介绍和准备Python3+django+nginx+uwsgi使用场景部署 当我们写完一套完整的网站功能,我们需要实时在生产环境上线,并需要容纳高并发的访问请求.所以我们需要部署以上来保证网站的服务质量. 1.1基本环境准备:echo 'LANG="en_GB.utf8"' > /etc/sysconfig/i18nLANG="en_GB.utf8" 1.2依赖环境:(env) [[email protected] nginx]# python -VP

Nginx + uWSGI + Python + Django部署实例

Nginx: Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎.能够支持高达 50,000 个并发连接数的响应,感谢 Nginx 为我们选择了 epoll and kqueue 作为开发模型. 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器

Django Nginx+uwsgi 安装配置

Django Nginx+uwsgi 安装配置 在前面的章节中我们使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,我们需要一个可以稳定而持续的服务器,比如apache, Nginx, lighttpd等,本文将以 Nginx 为例. 安装基础开发包 Centos 下安装步骤如下: yum groupinstall "Development tools" yum install zlib-devel bzip2-deve

Install Python+Django+Nginx+UWSGI

1.安装Python3 1.2安装sqlite3 ttp://www.sqlite.org 2.安装Django框架 https://www.djangoproject.com/ 3.安装nginx http://nginx.org/ 4.安装uWSGI https://uwsgi-docs.readthedocs.io/en/latest/Download.html 启动uWSGI 5.设置Django+nginx+uWSGI

CentOS7下部署rsync服务

说明: 在CentOS7下部署rsync服务和在CentOS6上部署基本上是一样的,只是CentOS7自带了rsyncd启动脚本,由systemd管理而已. rsync服务端配置 [[email protected] ~]# rpm -qa|grep rsync rsync-3.0.9-17.el7.x86_64 [[email protected] ~]# uname -r 3.10.0-514.el7.x86_64 [[email protected] ~]# systemctl stop

CentOS7下部署Python3+Django+uwsgi+Nginx

1,首先在部署项目时,需要安装好系统的环境,那我们首先来安装依赖yum -y install gcc gcc-c++yum -y groupinstall "Development tools"yum -y install zlib zlib-devel openssl openssl-devel ncurses-devel sqlite sqlite-devel bzip2-deve readline-devel tk-devel gdbm-devel db4-devel libpc

Django+nginx+uwsgi部署教程(centos7+ubuntu16.4)

项目部署教程 在线演示 1.1.原理介绍 django 一个基于python的开源web框架 uwsgi 一是一个web服务器,也可以当做中间件 nginx 常用高性能代理服务器 wsgi.py django项目携带的一个wsgi接口文件 nginx Nginx是一个Http和反向代理服务器 什么是反向代理服务器呢? 正向的就是由浏览器主动的想代理服务器发出请求,经代理服务器做出处理后再转给目标服务器 反向的就是不管浏览器同不同意,请求都会经过代理服务器处理再发给目标服务器 这其中的区别就是必须

Ubuntu16下部署Django+Nginx+uwsgi

1.更新apt-get apt-get update apt-get upgrade 2.安装Nginx apt-get install nginx 然后在浏览器输入IP地址若有nginx欢迎界面则成功 3.安装python3-pip apt-get instll python3-pip 注意安装python3的pip而不是python,安装成功后可以更新pip 4.安装Django以及uwsgi pip3 install Django pip3 install uwsgi 也可以采用虚拟环境下