uwsgi

Linux 下部署Django项目

五迷三道 提交于 2021-02-20 16:49:10
Linux 下部署Django项目 说明:本文所使用的环境为CentOS 6+Python2.7+Django1.11 安装Django、Nginx和uWSGI 1.确定已经安装了2.7版本的Python; 2.安装python-devel yum install python-devel 3.安装uwsgi pip install uwsgi 测试uwsgi是否能正常工作 1.新建一个index.py; # index.py def application (env, start_response): start_response( '200 OK', [( 'Content-Type', 'text/html')]) return "Hello World" 1 2 3 4 2.uwsgi –http :8000 –wsgi-file index.py 浏览器访问8000端口看是否有hello world输出 注意:确保8000端口能被外网访问 测试Django能否正常工作 $ cd /var/www/ $ django-admin startproject mysite $ cd mysite $ python manage.py runserver 0.0.0.0:8000 浏览器访问8000端口看是否有hello world输出 测试uwsgi是否能和django集成

Linux学习笔记之Django项目部署(CentOS)----进阶篇

筅森魡賤 提交于 2021-02-19 05:03:37
一、引入   当我们开发好了一个Django项目之后是需要部署到服务器上的,这样才能正式使用这个项目。之前用了一个运行.sh文件的方法让项目得以在后台运行,其实随着学习的深入,这种方法其实是有点low的,下面介绍今天的新方法。 二、uwsgi   1.什么是uwsgi     项目的文件中有一个wsgi的文件,其实这就是生产环境中会用到的wsgi。     WSGI:Web服务器网关接口,英文为Python Web Server Gateway Interface,缩写为WSGI,是Python应用程序或框架和Web服务器之间的一种接口,被广泛接受。     uWSGI:实现了WSGI的所有接口,是一个快速、自我修复、开发人员和系统管理员友好的服务器(用C语言编写)。   2.安装uwsgi      pip install uwsgi   3.配置uwsgi.ini,在项目中新建文件uwsgi.ini,与manage.py文件同级,编写如下配置: [uwsgi] socket = 外网ip:端口(使用nginx连接时,使用socket) http = 外网ip:端口(直接做web服务器,使用http) chdir = 项目根目录 wsgi -file= 项目中wsgi.py文件的目录,相对于项目根目录 processes =4 threads =2 master = True

Nginx (I think) saves files with wrong permissions when request is too large

£可爱£侵袭症+ 提交于 2021-02-18 23:00:26
问题 So, I'm completely new to hosting and Linux and all, so please forgive me if I'm saying things that are wrong. I'm still learning :) I'm working a small personal website created using Django. I wanted to get it online to see if everything would work. I got a cheap server from linode and using a guide from Digital-Ocean (the irony) I got everything working. I was happy. But... There's one major problem and I've read half the internet and can't find any similar problems: when the post request

Linux系统WEB服务之Nginx基础入门

…衆ロ難τιáo~ 提交于 2021-02-18 13:42:17
  一、Nginxi简介   Nginx是什么?它是一个开源、高性能的WEB服务器软件和代理服务器软件,由俄罗斯人Igor Sysoev 开发实现。它的功能主要分三类,第一是它作为一个WEB服务软件使用;第二它可作为一个反向代理服务器使用,邮件代理服务(通常邮件代理用的非常少);第三它可以基于upstream 或stream模块实现负载均衡,这种负载均衡是基于前面的反向代理增加的功能,它可以基于http协议进行应用层代理,也可以基于tcp协议进行伪四层代理(它不是真正意义上的四层代理,因为它工作在应用层);   二、Nginx的程序架构   Nginx是master/worker架构,由一个master主控进程和一个或多个worker进程组成;master进程主要功能是负责加载和分析配置文件、管理worker进程、平滑升级;worker进程主要负责处理并响应客户端的请求。每个worker进程依靠各种模块以流水线的形式实现各种功能处理;面向客户端网络IO连接请求,nginx的worker进程是基于事件驱动模型使用epoll机制来实现一个worker进程可以处理响应多路请求,如果是BSD系统,它可以使用kevent事件驱动模型实现一个worker进程处理并响应多路请求,从而实现高并发请求处理;面向本地磁盘IO连接请求,它是基于高级IO的sendfile机制

部署前后端分离项目

风格不统一 提交于 2021-02-17 09:04:01
路飞前后端项目部署 前言 使用软件 vue 部署前段 uwsgi uWSGI是一个全功能的HTTP服务器,实现了WSGI协议、uwsgi协议、http协议等。它要做的就是把HTTP协议转化成语言支持的网络协议。比如把HTTP协议转化成WSGI协议,让Python可以直接使用。 centos7 系统环境 virtulenv 在虚拟环境中部署后端项目 nginx 使用nginx做反向代理 redis 存储数据 mysql(mariadb) 存储数据 supervisor Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。 项目部署 准备工作 1 将项目上传到服务器上 方法一:使用xftp工具,进项上传文件夹,将项目代码,传到linux服务器当中 这个页面操作,实在不会百度 方式2: 使用scp从本地将文件上传到linux服务器中 scp -r 本地文件夹 远程用户名@远程ip:远程文件夹/ 2 将mysql数据迁移到服务器数据库 服务器端安装mysql(mariadb)数据库链接: https://www.cnblogs.com

部署前后端分离项目

一个人想着一个人 提交于 2021-02-17 00:13:55
1.先从后端搞起,部署django后台的环境依赖 -解决环境依赖的办法:   1.可以挨个的解决报错   2.把可以正常运行路飞哪个机器地下的python包,全部导出来,就可以     pip3 freeze > requirements.txt   3.把这个文件,传输给linux系统     linux再通过命令安装     pip3 install -r requirements.txt 3.通过模块依赖文件,直接安装,着是从讲师机器上下载的 手动创建依赖文件,然后写入 (s17luffy) [root@master luffy_boy]# cat requirements.txt certifi==2018.11.29 chardet==3.0.4 crypto==1.4.1 Django==2.1.4 django-redis==4.10.0 django-rest-framework==0.1.0 djangorestframework==3.9.0 idna==2.8 Naked==0.1.31 pycrypto==2.6.1 pytz==2018.7 PyYAML==3.13 redis==3.0.1 requests==2.21.0 shellescape==3.4.1 urllib3==1.24.1 uWSGI==2.0.17.1 4.安装uwsgi启动路飞后端

三分钟把声优带回家

落花浮王杯 提交于 2021-02-14 11:58:41
点击▲关注 “ 爪哇笔记 ” 给公众号标星置顶 更多精彩 第一时间直达 Java版本 语音合成可将计算机自己产生的、或外部输入的文字信息转变为可以听得懂的、流利的口语输出的技术。适用于手机APP、儿童故事机、智能机器人等多种应用场景。 整合 这里我们使用百度云的人工智能语音合成 API ,个人用户拥有一定的免费额度,基本已经够用了,在线语音合成支持丰富的 SDK ,基本上主流的语言都可以轻松接入。这里使用世界上最流行的语言 Java 。 pom.xml 引入: < dependency > < groupId >com.baidu.aip</ groupId > < artifactId >java-sdk</ artifactId > < version >4.12.0</ version > </ dependency > application.properties 引入: # =================================== # 百度人工智能,申请百度云账号并创建应用 # =================================== bai-du.appId = ********** bai-du.apiKey = ********** bai-du.accessKeySecret = ********** BaiDuProperties

浅析uWSGI、uwsgi、wsgi

狂风中的少年 提交于 2021-02-13 22:38:06
WSGI协议 首先弄清下面几个概念: **WSGI:**全称是 Web Server Gateway Interface , WSGI 不是服务器, python 模块,框架, API 或者任何软件,只是一种规范,描述 web server 如何与 web application 通信的规范。 server 和 application 的规范在 PEP 3333 中有具体描述。要实现WSGI协议,必须同时实现web server和web application,当前运行在 WSGI 协议之上的 web 框架有 Bottle , Flask , Django 。 **uwsgi:**与 WSGI 一样是一种通信协议,是 uWSGI 服务器的独占协议,用于定义传输信息的类型( type of information ),每一个 uwsgi packet 前 4byte 为传输信息类型的描述,与WSGI协议是两种东西,据说该协议是 fcgi 协议的10倍快。 **uWSGI:**是一个 web 服务器,实现了 WSGI 协议、 uwsgi 协议、 http 协议等。 WSGI 协议主要包括 server 和 application 两部分: WSGI server 负责从客户端接收请求,将 request 转发给 application ,将 application 返回的

How can I avoid uwsgi_modifier1 30 and keep WSGI my application location-independent?

只愿长相守 提交于 2021-02-10 20:28:55
问题 I have a WSGI application using CherryPy hosted using uWSGI behind a ngnix server. I would like for the application itself to be "portable". That is, the application should not know or care what URL it is mapped to, and should even work if mapped to multiple different URLs. I want to DRY by keeping the URL mapping information in one place only. Unfortunately, the only way I have found to do this involves using uwsgi_modifier 30 , which has been called an ugly hack. Can I avoid that hack? For

How can I avoid uwsgi_modifier1 30 and keep WSGI my application location-independent?

别来无恙 提交于 2021-02-10 20:28:50
问题 I have a WSGI application using CherryPy hosted using uWSGI behind a ngnix server. I would like for the application itself to be "portable". That is, the application should not know or care what URL it is mapped to, and should even work if mapped to multiple different URLs. I want to DRY by keeping the URL mapping information in one place only. Unfortunately, the only way I have found to do this involves using uwsgi_modifier 30 , which has been called an ugly hack. Can I avoid that hack? For