VPS上配置NGINX+UWSGI+DJANGO+MYSQL

1.安装Django 参见:http://djangobook.py3k.cn/2.0/chapter02/ 2.安装pip

$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade virtualenv
$ sudo apt-get install libmysqld-dev

3.安装MySQL

$ apt-get install mysql-server

4.安装mysql-python

$ sudo easy_install mysql-python

5.安装uwsgi

$ add-apt-repository ppa:stevecrozz/ppa
$ apt-get update
$ apt-get install uwsgi

6.测试uwsgi 新建test文件

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

然后执行:

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

在浏览器访问 http://youip:8001 即可看到结果 7.配置Django

django-admin.py startproject django_test    #创建一个Django项目

编写django_wsgi.py文件,将其放在与文件manage.py同一个目录下。

#!/usr/bin/env python
# coding: utf-8

import os
import sys

# 将系统的编码设置为UTF8
reload(sys)
sys.setdefaultencoding(‘utf8‘)

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_test.settings")

from django.core.handlers.wsgi import WSGIHandler
application = WSGIHandler()

假如你的项目目录在/home/django_test,则执行命令:

uwsgi --http :8000 --chdir /home/django_test --module django_wsgi

8.配置uWSGI 新建一个XML文件: djangochina_socket.xml,将它放在 /home/django_test/ 目录下:

<uwsgi>
    <socket>:8077</socket>
    <chdir>home/django_test</chdir>
    <module>django_wsgi</module>
    <processes>4</processes> <!-- 进程数 -->
    <daemonize>uwsgi.log</daemonize>
</uwsgi>

9.安装nginx

$ sudo apt-get install nginx

启动

$ sudo /etc/init.d/nginx start

10.配置 nginx uwsgi django 运行shell:

$ sudo vim /etc/nginx/sites-available/default

添加:

server {

    listen   90;
    server_name local;
    access_log /home/django_test/logs/access.log;
    error_log /home/django_test/logs/error.log;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
     include        uwsgi_params;
     uwsgi_pass     127.0.0.1:8077;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

    location /static/ {
        alias  /home/django_test/collectedstatic/;
        index  index.html index.htm;
    }

    location /media/ {
        alias  /home/django_test/public/media/;
    }
}

注意:配置文件中的一些文件夹需要自己新建 10.Nginx+uWSGI+Django的实现方式 重启Nginx服务器,以使Nginx的配置生效。

$sudo nginx -s  reload

重启后检查Nginx日志是否有异常。 启动uWSGI服务器

cd /home/django_test

uwsgi -x djangochina_socket.xml

检查日志 uwsgi.log 是否有异常发现。 访问服务 因此,我们访问VPS IP:8090,如果发现程序与 单独使用Django启动的程序一模一样时,就说明成功啦! 关闭服务的方法 将uWSGi进程杀死即可。 参考文章: 《五步教你实现使用Nginx+uWSGI+Django方法部署Django程序》(下) 《五步教你实现使用Nginx+uWSGI+Django方法部署Django程序》(上) http://wiki.ubuntu.org.cn/Nginx

时间: 2024-12-28 00:57:39

VPS上配置NGINX+UWSGI+DJANGO+MYSQL的相关文章

Ubuntu Server 14.04.2 LTS 配置 Nginx + uwsgi + Django

0.目的是在将小巧玲珑的Nginx和Django 通过uwsgi整合 1.预备环境 Python 2.7.8 @ ubuntu server 14.04.2版本 2.安装Django(这里使用的是pip,当然easy_install也是可以的) sudo pip install django==1.8 3.安装 Nginx sudo apt-get install nginx 4.安装 uwsgi sudo apt-get install uwsgi 5.创建个Django项目+app >>p

在ubuntu16上进行nginx+uwsgi+django部署的简要步骤

网上有很多部署教程,说了一大堆,遇到坑还是要自己一个个解决,这里有几个比较重要的坑大家一定要注意. 1.首先要安装python和python-dev环境,如果没有安装python-dev后面安装有些依赖要报错.这是第一个坑. apt-get install python python-dev pip 2.安装uwsgi要先安装gcc的编译环境.这是第二个坑.如果不安装gcc运行uwsgi也不会报错,后台进程就是不启动. 我被这个坑了很久. apt-get install gcc 3.找一个目录,

ubuntu 配置 nginx + uwsgi + django 记录

部分原文:http://www.cnblogs.com/jhao/p/6071790.html 1.nginx安装 sudo apt-get install nginx ubantu安装完Nginx后,文件结构大致为: 所有的配置文件都在 /etc/nginx下: 启动程序文件在 /usr/sbin/nginx下: 日志文件在 /var/log/nginx/下,分别是access.log和error.log: 并且在 /etc/init.d下创建了启动脚本nginx. nginx命令: serv

记录一下在ubuntu 上配置nginx+uwsgi+flask出现的一点问题.

还没有解决 现在的情况很奇怪, 配置uwsgi通过启动脚本启动后,无法正常运行,相同代码在centos上完全没有问题,同样用的是venv的环境, ubuntu,贴上nginx配置和uwsgi配置 uwsgi.ini [uwsgi] socket = 127.0.0.1:8001 wsgi-file=/home/rod/www/app.py callable=app touch-reload=/home/rod/www/ daemonize=/home/rod/uwsgi.log pidfile=

ubuntu下配置nginx+uwsgi+django

服务器配置是Ubuntu14.04 64位OS ubuntu14.04默认是安装好了python2.7版本不用自己安装了. 先更新下源 sudo apt-get update 第一步先安装pip sudo apt-get install -y python-pip 有些时候安装pip前需要安装几个相关包 sudo apt-get install -y python-dev sudo apt-get install -y libevent-dev 安装完pip后我们开始安装django sudo

【转】五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上)

五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上) By Django中国社区 at 2013-05-12 15:05 Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.nginx把所有静态请求自己来处理(这是NGINX的强项).然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,

使用Nginx+uWSGI+Django方法部署Django程序(上)

Django的部署可以有很多方式,采用nginx+uwsgi的方式是其中比较常见的一种方式. 在这种方式中,我们的通常做法是,将nginx作为服务器最前端,它将接收WEB的所有请求,统一管理请求.nginx把所有静态请求自己来处理 (这是NGINX的强项).然后,NGINX将所有非静态请求通过uwsgi传递给Django,由Django来进行处理,从而完成一次WEB请求. 可见,uwsgi的作用就类似一个桥接器.起到桥梁的作用. NOTE:不使用nginx,只使用uwsgi+django也是可以

Nginx+uWSGI+Django+Python+ MySQL 搭建可靠的Python Web服务器

一.安装所需工具 yum -y install gcc gcc-c++ rpm-build mysql* libtool-ltdl* libtool automake autoconf libtool make setuptool 二.编译安装python2.7.5 1. 下载python2.7.5,保存到 /data/qtongmon/software http://www.python.org/ftp/python/ 2. 解压文件 tar xvf Python-2.7.5.tar.bz2

Ubuntu Nginx uwsgi django 初试

/************************************************************************************** * Ubuntu Nginx uwsgi django 初试 * 说明: * 最近打算通过Python搭建一个数据收集的网站,先做一个搭建测试. * * 2016-8-5 深圳 南山平山村 曾剑锋 ***************************************************************