Django服务器的部署(Nginx+uwsgi +Ubuntu)

概述

在本地开发好自己的一个Django项目之后,然后将其部署到服务器上面以便更多的人访问。

前期准备

部署网站,需要服务器和域名。两者缺一不可,我使用的阿里云的ECS云服务器,也是在阿里云上购买的域名。对于域名,如果没有特别用处的地方,可以自己根据自己的想法购买,名字之类的都可以,域名的后缀常见的是.com(公司),.org(组织),.gov(政府),.edu(教育),如果是作为自己的博客这种,可以使用比较好记的、简短的域名,比如io、xyz。总之域名是看自己的想法和项目的需求(做微信小程序的接口则需要.com的域名)。

对于服务器的选择,常见的服务器可以分为文件服务器、Web服务器、数据库服务器、邮件服务器等,如果是用于部署个人的Web项目选择Web服务器即可。然后考虑服务器的性能以及兼容性,在购买之前要确定要运行什么,负载量有多大,这样可以确定服务器的大概配置,包括CPU、内存、硬盘、带宽等,如果自己的网站包含了一些比较大的视频或者素材,那么带宽就必须要高一点儿,或者考虑第三方的服务,比如七牛云或者阿里云的对象云存储,可以快速访问,轻松帮我们解决问题。另外也要考虑到服务器的售后,如果有什么问题可以快速通过售后解决问题,这一点我觉得阿里云做的比较好,24小时技术支持。而且解决问题得速度也比较快,所以我选择的阿里云。另外还有重要的一点,服务器的操作系统,如果对于Linux服务器不太熟悉的情况下,还是老实的选择Windows系统,自己在部署和运维的时候比较方便,虽然大多数服务器都是采用的Linux,不熟悉用的时候就非常的不方便,什么命令还要百度查一下。

Ubuntu部署

安装Nginx。通过apt-get install nginx安装nginx。在Ubuntu上安装完Nginx之后,Nginx的所有配置文件都在/etc/nginx下,启动程序文件都在/usr/sbin/nginx下;日志文件在/var/log/nginx下,并且在/etc/init.d下创建了启动脚本:

    sudo /etc/init.d/nginx start #启动
    sudo /etc/init.d/nginx stop #停止
    sudo /etc/init.d/nginx restart #重启
 

安装UWSGI。通过apt-get install python-dev和pip install uwsgi安装。这里的大体流程是:Nginx作为服务器的最前端,负责接收Client的所有请求,统一管理。静态请求由Nginx自己处理。非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次Web请求。

Nginx+Uwsig+Django

 

配置uwsgi文件。uwsgi文件是将Uwsgi启动时的众多参数以配置文件的方式,然后即可通过配置文件启动uwsgi,而不用很长的命令去启动(这个文件放在与django项目中manage.py同一级下)。

 

其中chdir是指Django项目的全路径,socket是指django运行的端口号,module是指django创建时的uwsgi.py,即这里是指向这个文件。

 

配置Nginx。打开/etc/nginx/sites-enabled目录,并编辑nginx的配置文件default

以及静态文件的配置

然后重启Nginx服务以及UWSGI服务(uwsgi -d --ini uwsgi.ini)后台运行UWSGI服务。

 

上面的访问是指通过IP地址访问能够成功访问,如要配置域名访问,还需要在阿里云或者腾讯云上配置解析,包括域名的解析、安全组的配置、端口的设置等等然后才可以通过域名正常访问,如果需要HTTPS访问还需要申请CA证书,然后配置HTTPS的相关配置,这些弄完项目才算部署完成。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Ubuntu是一个自由开源的操作系统,其中有很多的工具和服务可以用于搭建与开发Web应用。其中,常用的Web应用栈是使用Nginx作为Web服务器UWSGI作为应用程序服务器Django作为Web框架,MySQL作为关系型数据库。 要安装和配置这些服务,需要进行以下步骤: 1. 安装Ubuntu操作系统,可以选择最新版本的Ubuntu LTS或者最新的Ubuntu发行版。 2. 安装Nginx服务,并配置Nginx服务器来处理并转发HTTP请求。这里可以使用apt-get install命令来安装Nginx包。 3. 安装UWSGI服务,并配置UWSGI服务器来处理Django应用程序。这里可以使用pip install命令来安装UWSGI包。 4. 安装Django,并编写一个基本的Django应用程序。然后配置UWSGI服务器以运行Django应用程序。可以使用pip install命令来安装Django包。可以使用此教程 - https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html 5. 安装MySQL数据库服务,并配置MySQL服务器以使用Django应用程序。可以使用apt-get install命令来安装MySQL包。 6. 在Django应用程序中配置MySQL数据库连接参数,并创建 MySQL数据库及表。 7. 配置Nginx服务器以使用UWSGI服务器来处理Django应用程序。可以使用上面的教程来完成这一步骤。 8. 启动NginxUWSGI服务器,并测试Django应用程序是否可以访问。 在进行以上的步骤时,需要注意安全措施,防止 Web 应用程序被攻击和入侵。同时,也需要进行充分的测试,保证 Web 应用程序的稳定性和可用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑白键的约定

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值