Uwsgi:部署web应用程序

Nginx:反向代理,静态服务器

1.修改uwsgi配置文件》nginx反向代理[nginx接收请求-》传递-》[uwsgi] http=.. --》 socket=..

为了保证项目的访问安全,ip地址变为本机地址

在manage.py同目录下新建uwsgi.ini文件并配置

[uwsgi]

Socket=127.0.0.1:8000

Chdir=..

Wsgi-file=..

Master=..

Process=..

#static-map=..注释掉,静态文件有nginx代理

uwsgi.ini

[uwsgi]
#http=192.168.132.128:8000
socket=127.0.0.1:8000
chmod-socket=666
chdir=/home/op/桌面/django-pfeiliu/pfeiliu
wsgi-file=pfeiliu/wsgi.py
processes=4
threads=2
master=true
pidfile=uwsgi.pid
daemonize=uwsgi.log
#static-map=/static=static-file

2.确认是否安装nginx

命令行安装:apt-get install nginx

源代码安装:wget http://nginx.org/download/nginx-1.6.2.tar.gz

-》解压 tar xzvf ...tar.gz

-》make & make install

修改nginx配置文件vim  /etc/nginx/nginx.conf

添加虚拟服务器配置[server]

添加反向代理路由配置[location - uwsgi_pass]

添加静态文件服务器路由配置[location - alias]

重启nginx

nginx对静态文件的处理优于uwsgi

Uwsgi对动态文件的处理优于nginx

在http中添加server

server {

listen 80;

server_name 192.168.37.128;

location / {

include uwsgi_params;

Uwsgi_pass 127.0.0.1:8000;

}

location /static {

alias 静态文件地址;

}

}

/etc/nginx/nginx.conf

静态文件收集请参考方式1  https://www.cnblogs.com/pfeiliu/p/11922843.html

............................................
server {
listen ;
server_name 192.168.132.128; #charset koi8-r; #access_log logs/host.access.log main; location / {
include /usr/local/nginx/conf/uwsgi_params;
uwsgi_pass 127.0.0.1:;
} location /static {
alias /home/tarena/桌面/django-pfeiliu/pfeiliu/static-file;
}
}
............................................
 

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

解决方法:sudo killall -9 nginx

开启nginx:server nginx start

重启nginx:server nginx restart

关闭nginx:server nginx stop

测试nginx:nginx -t   # 如果是nginx的问题,可以通过测试发现原因。

启动项目:

启动nginx:/usr/local/webserver/nginx/sbin/nginx

启动uwsgi:uwsgi --ini uwsgi.ini

浏览器输入ip,即可访问

关闭项目:

杀死nginx进程:sudo killall -9 nginx

杀死nginx进程:sudo killall -9 uwsgi

代码布局如下:

使用uwsgi+nginx部署项目的更多相关文章

  1. vue+uwsgi+nginx部署项目

    首先先下载好前后端项目 先从前端vue搞起 要在服务器上,编译打包vue项目,必须得有node环境 下载node二进制包,此包已经包含node,不需要再编译 wget https://nodejs.o ...

  2. Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx)

    Linux 集群概念 , wsgi , Nginx负载均衡实验 , 部署CRM(Django+uwsgi+nginx), 部署学城项目(vue+uwsgi+nginx) 一丶集群和Nginx反向代理 ...

  3. 使用uWSGI+nginx部署Django项目

    最近使用django写了一些项目,不过部署到服务器上碰到一些问题,还有静态文件什么的一堆问题,这里总结一下碰到的问题和解决方案,总体思路是按照官方文档走的. 原文地址:http://uwsgi-doc ...

  4. vue+uwsgi+nginx部署路飞学城

    vue+uwsgi+nginx部署路飞学城   有一天,老男孩的苑日天给我发来了两个神秘代码,听说是和mjj的结晶 超哥将这两个代码,放到了一个网站上,大家可以自行下载 路飞学城django代码 ht ...

  5. linux vue uwsgi nginx 部署路飞学城 安装 vue

    vue+uwsgi+nginx部署路飞学城 有一天,老男孩的苑日天给我发来了两个神秘代码,听说是和mjj的结晶 超哥将这两个代码,放到了一个网站上,大家可以自行下载 路飞学城django代码#这个代码 ...

  6. virtualvenv+django+uWSGI+nginx 部署

    原创博文 转载请注明出处! 1. virtualvenv 2. django 3. uWSGI 4. nginx 5. 踩坑记录 1. virtualvenv virtualvenv install ...

  7. django+uwsgi+nginx部署(非常详细)

    django+uwsgi+nginx部署 1.介绍: 在网上看了很多教程,但自己部署了很久都没有成功,这篇博文记录自己所踩过得坑. 2.环境: Ubuntu 16.04.1 LTS (GNU/Linu ...

  8. centosflask+uWSGI+nginx部署

    centosflask+uWSGI+nginx部署 1.      概念 Flask自带webserver--Werkzeug,可以搭建服务,运行网站.但在开发时,一般会用专业的--uWSGI. 另外 ...

  9. Django+uWSGI+Nginx 部署网站

    Django 1.11设置 保证Django在本地调试没有问题: 当然这是前提^_^ 收集静态文件至指定文件夹 Django静态文件设置具体参考:https://docs.djangoproject. ...

随机推荐

  1. Zookeeper 运维实践手册

    Zookeeper是一个高可用的分布式数据管理与协调框架,该框架能很好地保证分布式环境中数据一致性.一般用来实现服务发现(类似DNS),配置管理,分布式锁,leader选举等. 一.生产环境中Zook ...

  2. vue中js文件中export常见方法及使用

    js文件一般放静态资源或动态资源,我将在这两种不同资源的请求下以不同的方式export出来 第一种在js中使用function 动态资源 在vue文件中引用调用这些方法 import进来 在生命周期函 ...

  3. C++:const

    const const是C++提供的一个强大的关键字,const的用法非常多,但总的来说,const的作用只有一个:保证被修饰的内容不会被程序所修改. const基本用法 对一个类型的对象使用cons ...

  4. NPOI中的PhysicalNumberOfCells 与 LastCellNum

    这两个理论上一个是算空列,一个不算空列,但是实际上有时候相同数据的excel,不同的excel编辑工具保存后的,PhysicalNumberOfCells可能不一样,会导致莫名其妙错误,最好使用Las ...

  5. C#工具类MySqlHelper,基于MySql.Data.MySqlClient封装

    源码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...

  6. K8S CoreDNS部署失败,问题分析

    1. 查询k8s集群部署pod的基本情况 如下图,我们可知容器coredns和dnsutils都部署成功,但是由于域名解析的问题,导致coredns和dnsutils的容器不断重启(原因heath检查 ...

  7. 基于DockerSwarm 部署InfluxDB并使用JAVA操作

    Docker中部署InfluxDB 1.运行容器 $ docker run --rm \ -e INFLUXDB_DB=db0 -e INFLUXDB_ADMIN_ENABLED=true \ -e ...

  8. ElasticSearch查看删除关闭索引

    curl -XDELETE 'http://10.1.2.2:9200/iis_log_2019-07'     #删除名为/iis_log_2019-07的索引 curl -XPOST 'http: ...

  9. C++中Matrix(矩阵)的基本运算( +、-、=、<<)

    利用二维指针开辟空间形成二维数组: 原题为设计一个Matrix类,实现基本的矩阵运算: 初次设计为HL[10][10]数组,存放矩阵元素,后改为二维指针: 主要问题存在于二维指针理解的不透彻,无法理解 ...

  10. 大数据除了Hadoop还有哪些常用的工具?

    大数据除了Hadoop还有哪些常用的工具? 1.Hadoop大数据生态平台Hadoop 是一个能够对大量数据进行分布式处理的软件框架.但是 Hadoop 是以一种可靠.高效.可伸缩的方式进行处理的.H ...