Python进阶(三十七)Windows7使用nginx+apache部署django项目

一、前言

Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式。

目前国内各大门户网站已经部署了nginx,如新浪、网易、腾讯等;国内几个重要的视频分享网站也部署了nginx,如六房间、酷6等。新近发现nginx 技术在国内日趋火热,越来越多的网站开始部署nginx。

相比apache、iis,nginx以轻量级、高性能、稳定、配置简单、资源占用少等优势广受欢迎。

在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求。nginx把所有静态请求自己来处理(这是nginx的强项)。然后,nginx将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求。

可见,uwsgi的作用就类似一个桥接器。起到桥梁的作用。

Linux的强项是用来做服务器,但是自己的项目是在windows7系统下完成的,索性就在windows系统下完成项目部署。

但是,uwsgi并没有适合Windows的安装版本。因为os.uname()这个function在Windows版本中是没有的,所以Windows中uwsgi目前应该是无法安装的。

在使用pip install uwsgi命令安装uwsgi时,出现了以下错误提示。

pip install uwsgi 安装不成功 提示 ‘module’ object has no attribute ‘uname’

这里写图片描述
遂决定使用下载安装包的方式进行安装。下载地址
选择下载的uwsgi版本为2.0.15。

下载完成后,进行解压。在Dos窗口切换至解压目录,然后执行python setup.py install命令。但是仍然出现了上面的错误信息,错误提示信息如下。

这里写图片描述

Python(python3.4.3)的文档中明确说明os.uname()只适用于Unix,并不适用于Windows,想安装uwsgi还是使用Linux吧。这下心塞了~

二、nginx安装

首先,到nginx官网上下载相应的安装包,下载完成后进行解压。自己下载的版本为1.12.0。

然后,进入window的cmd窗口,输入如下图所示的命令,进入到nginx目录,使用“start nginx.exe ”进行nginx的启动。若启动成功的话,会在任务管理器中看到“nginx.exe”进程,如下图所示:

这里写图片描述

在浏览器地址栏输入:127.0.0.1(或localhost):8088,会看到如下图所示的nginx欢迎界面。

这里写图片描述
  注意,此时,我在浏览器中输入的是localhost:8066,因为我修改了其config目录下nginx.conf配置文件内容,修改后的内容如下:
这里写图片描述

相信大家看到配置文件之后,就会明白其具体配置含义了。这里不再进行详细介绍。

其他相应的命令:

nginx.exe -s stop                   //停止nginx
nginx.exe -s reload                //重新加载nginx
nginx.exe -s quit                  //退出nginx

注:以上的命令中,.exe可以去掉。

至此,nginx安装完成。

继续折腾,发现nginx+fastcgi是可行的,遂决定实践。

三、初识fastcgi

CGI全称是“公共网关接口”(Common Gateway Interface)。它可以用任意语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等,但它为人诟病的会在每次运行事前都要花费时间去fork-and-execute一次,所以便诞生了FastCGI组件,该组件由微软开发。FastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要运行后不会每次都要花费时间去fork-and-execute,还支持分布式的运算, 即 FastCGI 程序可以在网站服务器以外的主机上执行并且接受来自其它网站服务器来的请求。下载地址 。很明显,使用fastcgi的话,就得使用iis的服务部署方式。似乎越来越有意思了。对于IIS的服务发布方式自己是不感兴趣的,遂决定使用Apache方式部署。

首先下载apache,下载地址。下载完成后,进行解压,然后打开相应解压目录下的config配置目录中的httpd.conf配置文件,这是apache服务器的配置文件。主要是将其中的文件目录修改为解压后存放的目录。

修改完成后,在Dos窗口切换至bin目录下,然后执行start httpd.exe命令,这时会打开apache的命令行窗口。
这里写图片描述

然后在浏览器访问 localhost就可以看到 It works!,证明apache正常工作。

这里写图片描述
Apche服务器配置好之后,就需要部署项目了。但是后面的过程过于复杂。

经过以上折腾之后,感觉还是在Linux上部署Django比较靠谱,遇到的坑也会比较少。

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Windows 部署 Django 项目的步骤如下: 1. 安装 PythonDjango:在 Windows 上安装 PythonDjango,可以从官网下载安装包,安装完成后,可以在命令行中输入 pythondjango-admin 来验证是否安装成功。 2. 创建 Django 项目使用 django-admin startproject 命令创建 Django 项目,该命令会在当前目录下创建一个项目文件夹,并生成一些默认文件。 3. 配置数据库:在 settings.py 文件中配置数据库,可以使用 SQLite、MySQL、PostgreSQL 等数据库,根据需要进行配置。 4. 运行 Django 项目使用 python manage.py runserver 命令启动 Django 项目,该命令会在本地启动一个开发服务器,可以在浏览器中访问 http://localhost:800/ 来查看项目是否正常运行。 5. 部署 Django 项目:将 Django 项目部署到服务器上,可以使用 ApacheNginx、Gunicorn 等 Web 服务器,根据需要进行配置。 6. 配置静态文件:在 settings.py 文件中配置静态文件路径,可以使用 Django 自带的 staticfiles 库来管理静态文件。 7. 配置数据库连接:在 settings.py 文件中配置数据库连接信息,根据需要进行配置。 8. 配置日志:在 settings.py 文件中配置日志信息,可以使用 Python 自带的 logging 库来管理日志。 9. 配置安全性:在 settings.py 文件中配置安全性信息,包括 CSRF、XSS、SQL 注入等安全问题。 10. 配置缓存:在 settings.py 文件中配置缓存信息,可以使用 Django 自带的缓存库来管理缓存。 以上是 Windows 部署 Django 项目的基本步骤,具体操作可以根据实际情况进行调整。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

No Silver Bullet

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

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

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

打赏作者

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

抵扣说明:

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

余额充值