学习
实践
活动
专区
工具
TVP
写文章

django生产环境配置详解

网上查询得知:Django 关闭DEBUG模式后,就相当于是生产环境了,Django官网上指出如果是django框架一旦作为生产环境,那么它的静态文件访问接口就不应该从Django框架中走了,应该有独立的 web环境,首推nginx 。 举例如图: 但是一旦放到生产环境(也就是关闭掉DEBUG模式),你在nginx中就要单独做访问/static/目录的路由。 2.然后将STATICFILES_DIRS 列表中所有目录下的内容也拷贝到STATIC_ROOT目录下 静态目录拷贝后的结果如图: 对是拷贝,不是剪切,所以生产中最好把开发测试目录过滤掉在放到生产环境。 STATIC_ROOT 是Django框架放到生产环境中的唯一的一个静态目录     而当你设置DEBUG=False时,就必须在Django框架前端部署nginx或者其他web服务器来提供静态访问入口

28620

Django + Uwsgi + Nginx 的生产环境部署

所以如何部署Django不是Django所需要关心的。 项目比如是一个中国人 uwsgi相当于日语,WSGI相当于汉语 日本人如果想和中国人交流必须使用一个翻译官,这个翻译官必须要董很多种语言 uWSGI:相当于就是一个即董uwsgi(日语)又董WSGI(汉语) 生产环境部署 在centos 7中安装python3环境: # 1、yum更新yum源 yum update # 2、安装Python 3.7所需的依赖否则安装后没有pip3包 yum install zlib-devel /configure --enable-optimizations # 执行该代码后,会编译安装到 /usr/local/bin/ 下,且不用添加软连接或环境变量 make && make install export PATH=$PATH:/usr/local/python3/bin [root@linux-node1 testProj]# source /etc/profile # 修改完后,还需要让这个环境变量在配置信息中生效

6.5K82
  • 广告
    关闭

    2023新春采购节

    领8888元新春采购礼包,抢爆款2核2G云服务器95元/年起,个人开发者加享折上折

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django + Uwsgi + Nginx 的生产环境部署

    使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了。 比如静态文件处理,安全,效率等等,本篇文章总结归纳了一下基于uwsgi+Nginx下django项目生产环境的部署 准备条件: linux上已部署好python环境,且已安装好项目所需的模块 安装python 环境,请参考以下链接 http://www.py3study.com/Article/details/id/320.html 创建django项目 [root@localhost ~]# cd /www 使用命令:pip3 install --upgrade pip 进行升级 基于uwsgi+django的实现 1.使用命令启动uwsgi 先关闭上面启动的Django项目,使用Ctrl+c,就可以取消。 准备静态文件 下载Bootstrap,官方网址为: http://www.bootcss.com/ 下载最新稳定版本3.3.7,选择用于生产环境的 https://v3.bootcss.com/getting-started

    4.9K40

    生产环境使用Nginx+uwsgi部署Django

    如果在生产环境部署django,就要多考虑一些问题了。比如静态文件处理,安全,效率等等 在网上找到了不错的部署的教程,讲解的还是很详细的,我就不重新再整理了。 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上) – Django中国社区 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(下) – Django 中国社区 但是作为记录,我还是要记录下部署中遇到的问题: (一)解决Django生产环境部署的静态文件丢失问题 有些时候,把程序放在生产环境,不过出于一些原因还没有配置nginx等环境,关闭了Debug 使用如下命令即可成功使用静态文件 python manage.py runserver 0.0.0.0:8000 --insecure (二)部署生产环境之前的准备 正如(一)中的方法只是测试时使用,如何处理静态文件 在manage.py同级目录新建restart.sh脚本,内容如下: killall uwsgi uwsgi -x django_socket.xml (这个django_socket.xml根据你起得名字替换

    63660

    ubuntu Django + Uwsgi + Nginx 的生产环境部署

    一、概述 使用runserver可以使我们的django项目很便捷的在本地运行起来,但这只能在局域网内访问,如果在生产环境部署django,就要多考虑一些问题了。 比如静态文件处理,安全,效率等等,本篇文章总结归纳了一下基于uwsgi+Nginx下django项目生产环境的部署 uWSGI是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。 apt-get install -y python3-pip 安装虚拟环境 pip3 install virtualenv 创建虚拟环境 sudo mkdir /virtualenvs cd /virtualenvs /bin/pip3 install django 二、运行django项目 创建django项目 root@ubuntu:~# mkdir /www root@ubuntu:~# cd /www/ root 的 wsgi 文件,表示mysite1/wsgi.py home 虚拟环境目录,写绝对路径 daemonize 进程在后台运行,并将日志打到指定的日志文件 启动django项目 root@ubuntu:

    2K60

    WEB平台DJANGO&VUE配置部署生产环境

    本文主要讲述了如何一步步在生产环境上部署django和vue,操作系统默认为centos 说明:后文中出现的以下字符串均表示具体的路径或者名称,含义如下: DJANGO_DIR----表示django的工程根目录 在collectstatic运行的时候会把STATICFILES_DIRS中的静态文件拷贝到这个目录中,达到从开发环境生产环节过程中移植静态文件的作用。 STATICFILES_DIRS用来配置一些开发环境下生成的静态文件的地址,即编译好的VUE_STATIC_DIR 在url.py中添加路由 url(r'^static/(? , 配置好以上配置后,编译好的静态文件还在VUE_STATIC_DIR目录下,我们最终要执行下面命令才能把STATICFILES_DIRS中的静态文件拷贝到STATIC_ROOT这个目录中,也就是最终生产环境指定的 //ip:8080/admin 时,也不会出现找不到css的问题了 当然这种方式其实是通过django的路由来访问静态文件的,一般的,生产环境不会通过django来转发静态文件,而是通过其他服务器进行转发

    1.5K120

    使用 nginx + gunicorn 来部署生产环境Django app

    在测试环境下,我们可以简单的使用 python manage.py runserver 8080 启动一个 Django,由于尚未通过安全审核或性能测试,而且是单线程,并发能力也不强,因此不能在生产环境中使用 生产环境下,需要使用专门的 Web 服务器,像 Gunicorn 或 uWSGI。 今天就来分享一下如何使用 nginx + gunicorn 来部署生产环境Django app。 Django app 只是它支持的其中一种框架。 安装 pip install gunicorn gunicorn 没有依赖项,因此下载后可以很容易迁移到生产环境。 8000 即可启动生产级别的 Web 服务,前提是你的 Django settings 也是生产环境的配置,例如 Debug = False。 Django app,生产环境下 Nginx 的反向代理,最好都使用 socket 来通讯,至于为什么,可以参考前文redis 是单线程,是怎么解决高并发问题的。

    16410

    Vue+Django+Nginx+uWSGI部署生产环境 前后端分离

    Nginx uWSGI #0 环境 CentOS6.8 Python3.7.3 uWSGI==2.0.18 Django==2.0.7 Vue.js 2 Nginx #1 需求分析 前后端分离项目,前端 Vue.js后端Django 部署到CentOS服务器上 #2 前提条件 能运行起来的Vue项目(在这里我用我的实际项目) 能运行起来的Django(在这里我用我的实际项目),包括第三方库/数据库这里不具体操作 #3 开始 #3.1 部署Django Django 在这里仅仅是提供接口,所以不会涉及一些静态文件的处理 #3.1.1 后端大致流程 首先以下几个东西需要弄清楚他们的关系 Nginx ( 反向代理 ) uWSGI ( webserver,可以理解为PyCharm,用来启动Django的,其实并不是,先这么理解) Django ( 后端, 提供api, 最核心的东西 ) 将Django项目传到服务器上 django项目(重点,这才是生产部署的方法) 新建文件 script // 和 manage.py 同级目录下创建 script 文件夹 cd /opt/blog/api/blog_code/ mkdir

    3.2K21

    什么是开发环境、测试环境生产环境

    上周有小伙伴咨询,开发/测试/生产环境的概念,今天就做一个小结~ 1、开发环境 开发环境是程序员专门用来写代码的环境,一般是自己本地的电脑,也可以是远程的云服务器。 产品和测试同学验收没问题后,就把代码发布到生产环境啦。 3、生产环境 生产环境是正式对外的,给客户使用的环境。 开发把测试好的代码“部署”到生产服务器后,准备一个生产域名,外面用户通过生产域名访问。 为了数据隔离和安全,数据库也会分为这3种环境,不同环境分别对应不同的数据库。 细心的同学可能会发现,有些公司还会多出一种环境,就是“预发布环境”。 预发布环境的配置、代码和数据库跟生产环境一模一样,不一样的地方是,预发布环境有自己的独立域名。 需要“预发布环境”的原因可能有以下原因: 1、需要生产数据库才能测试这个新功能。 2、对测试要求非常苛刻,在发布到生产环境前,需要模拟生产环境的一切配置,完全走一遍没问题再发布到生产环境才更安全。 --- end ----

    67910

    Django环境搭建

    大家搜索django并看到本文的时候,相信已经知道django是用来干嘛的了,我也就不在多说废话了。 简单来说,这就是Django所能做的。django自带后台和登录系统,还有很多模板,降低耦合度,当你能理解django的精髓的时候你就会觉得开发一个网站是如此简单。 安装之后我们需要配置环境变量,不然我们不能在命令行cmd中使用Python命令。 步骤 1、单击右键我的电脑->属性->高级系统设置->环境变量 2、在系统变量中找到path变量 3、添加Python的安装目录, 接下来我们就可以安装django Django安装 pip安装(最简单的方式 然后执行: python setup.py install 然后开始安装,Django将要被安装到Python的Lib下site-packages 在然后如配置Python环境变量一样,将这几个目录添加到系统环境变量中

    17410

    uat环境生产环境的区别_angular 生产环境 相对路径无效

    项目上线,测试环境正常,上UAT环境后访问不到数据,于是开始步步分析,细细琢磨,最终成功上UAT,但影响了上生产环境的时间,造成项目延时发布,第一次遇到这么奇怪的事情,之后就是2017年12月26(周二 )的上生产环境,不过可怕的事情还是发生了:本地、测试、UAT环境都正常,生产环境有访问不到数据,直到12月27号2:00才解决,以上是问题情景。 这边也想了很长时间:为什么UAT环境代码好好的,正式环境就不行了,拉的是一套代码,不同的地方就是Disconf配置文件了(这里我前后核对了不下六遍,前两遍确实有问题及时做了修改,最后一遍我是一个一个字核对的 以下是我这边出现访问不到数据的三个情况: 1、Disconf环境配置文件的配置(本地、测试、UAT及生产环境都会有所差别),具体看各个环境的访问地址; 2、系统中访问的子系统接口是否同步上了相应的环境, 在相应环境上直接访问接口验证是否部署成功; 3、httpClient工具类中http和https是有区别的,线上环境和UAT环境一定要是https://开头的(从发现这个问题和解决花了我不少时间),https

    11010

    扫码关注腾讯云开发者

    领取腾讯云代金券