jdango 部署之nginx+uwsgi

1,安装pip

sudo apt-get install python-pip

2,利用 pip 安装 Django

sudo pip install Django

3,检测Django是否安装成功

>>> import django

>>> django.VERSION

(1, 9, 2, ‘final‘, 0)

>>> 

>>> django.get_version()

‘1.9.2‘

4, 安装 nginx

sudo apt-get install nginx

5,安装 uwsgi

sudo pip install uwsgi

6,测试uwsgi

7,

在django项目的根目录下创建test.py文件,添加源码如下:

# test.py
def application(env, start_response):
    start_response(‘200 OK‘, [(‘Content-Type‘,‘text/html‘)])
    return ["Hello World"] # python2
    #return [b"Hello World"] # python3

然后,Run uWSGI:

uwsgi --http :8000 --wsgi-file test.py

参数含义:

  • http :8000: 使用http协议,8000端口
  • wsgi-file test.py: 加载指定文件 test.py

8,nginx配置

uwsgi_params文件拷贝到项目文件夹下。uwsgi_params文件在/etc/nginx/目录下

  • 在项目文件夹下创建文件mysite_nginx.conf,填入并修改下面内容:
  • server {
        listen      80;
        server_name localhost;
        charset     utf-8;
    
        client_max_body_size 75M;
        access_log /opt/bonker.log;
    
        location /media  {
            alias /home/bonker/web/webProject/media;
        }
    
        location /static {
            alias /home/bonker/web/webProject/static;
        }
    
        location / {
            uwsgi_pass   127.0.0.1:8001;
            include     /home/bonker/web/webProject/uwsgi_params;
        }
    }

    /etc/nginx/sites-enabled目录下创建本文件的连接,使nginx能够使用它:

  • sudo ln -s ~/path/to/your/mysite/mysite_nginx.conf /etc/nginx/sites-enabled/

9,配置uwsgi

在项目文件夹下,创建文件mysite_uwsgi.ini,填入并修改下面内容:

[uwsgi]
chdir           = /home/bonker/web/webProject
module          = webProject.wsgi
master          = true
processes       = 2
socket          = 127.0.0.1:8001
vacuum          = true

  在项目目录下执行

uwsgi --ini mysite_uwsgi.ini在浏览器中输入localhost,就看到正常的Django页面了。

10,开机启动uwsgi

编辑文件/etc/rc.local, 添加下面内容到这行代码之前exit 0

/usr/local/bin/uwsgi --ini /home/bonker/web/webProject/webProject_uwsgi.ini

				
时间: 2024-10-12 16:48:56

jdango 部署之nginx+uwsgi的相关文章

(转) 解决django项目部署到nginx+uwsgi服务器后 admin页面样式消失的问题

原贴地址:https://blog.csdn.net/qq_42571805/article/details/80862455 摘要 uwsgi为主要服务器,nginx为反向代理服务器部署完成之后发现django后台admin访问时无样式 解决方法如下 1.先打开django项目中settings.py文件(/blog/settings.py),添加STATIC_ROOT = ‘/home/blog/static/’ 2.打开nginx配置文件nginx.conf,添加如下图红色框中内容 3.运

【python】Django web项目部署(Nginx+uwsgi)

一.安装uwsgi 通过pip安装uwsgi. pip install uwsgi 测试uwsgi,创建test.py文件: def application(env, start_response):     start_response('200 OK', [('Content-Type','text/html')])     return [b"Hello World"] 通过uwsgi运行该文件. uwsgi --http :8001 --wsgi-file test.py 常用

Django 生产环境部署-记录 nginx+uwsgi+Django

这几天一直研究django生产环境的部署,看了很多文章,都写的很好,有些时候只是环境不太一样,配置过程中出现了很多的问题,例如: uwsgi  ---module   一直运行不起来,,加--file参数才可以... ----亲测可以运行----- 1.安装DJANGO,创建工程项目,确保python manage.py runserver 0.0.0.0:8080 能够正常启动 2.安装uwsgi , 在你的机器上写一个test.py # test.pydef application(env,

Django项目部署(nginx+uWSGI+django+virtualenv+supervisor发布web服务器 )

一.简介 WSGI是Web服务器网关接口.它是一个规范,描述了Web服务器如何与Web应用程序通信,以及Web应用程序如何链接在一起以处理一个请求,(接收请求,处理请求,响应请求) 基于wsgi运行的框架有bottle,DJango,Flask,用于解析动态HTTP请求 支持WSGI的服务器 wsgiref python自带的web服务器 Gunicorn 用于linux的 python wsgi Http服务器,常用于各种django,flask结合部署服务器. mode_wsgi 实现了Ap

线上生产环境部署Djngao+Nginx+Uwsgi

是否曾想过把django项目从windows移植到Linux上运行,Linux性能众所周知,作为Django运行的服务器再合适不过啦,今天分享一下如何在线上云机器的Linux环境运行Django项目. 客户端访问服务端的流程 1.首先客户端请求服务资源, 2.nginx作为直接对外的服务接口,接收到客户端发送过来的http请求,会解包分析. 3.如果是静态文件请求就根据nginx配置的静态文件目录,返回请求的资源,否则会根据django配置文件设置的static目录去找资源. 4.如果是动态的请

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 也可以采用虚拟环境下

ubuntu 16.04 部署 pypy+nginx+uwsgi+django(详细)

1.nginx                                                                                                                                              安装nginx之前先安装python的pip,千万不能用pypy的pip,会容易破坏依赖关系,很难修复, sudo apt-get install nginx 因为,是自动安装,所以nginx的配置文件

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

在本地运行django应用相对来说还是挺方便的,使用自带的runserver启动即可.如果在生产环境部署django,就要多考虑一些问题了.比如静态文件处理,安全,效率等等 在网上找到了不错的部署的教程,讲解的还是很详细的,我就不重新再整理了. 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上) – Django中国社区五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(下) – Django中国社区 但是作为记录,我还是要记录下部署中遇

uwsgi部署到nginx出现invalid request block size: 4161 (max 4096)...skip问题

使用Flask制作一个网页平台之后,登陆使用openid登陆,然后使用uwsgi服务部署到nginx上,运行起来没有什么问题,但是偶尔在登陆的时候出现502的错误,一般登陆成功之后后面的任何操作都不会出错. 查看uwsgi的log之后,发现出现这样的一个错误: invalid request block size: 4161 (max 4096)...skip 之前一个没有去详细搜索过,也没有具体去看错误产生的原因,因为只是偶尔出现,并且有时候重试的时候是可以登陆的,所以没有太多的去关注,今天因