第一步 创建项目启动脚本

# 创建项目启动脚本 vi /etc/init.d/project_name
#!/bin/bash
# Description: uwsgi manager scripts
# chkconfig: -
#
# Get function from functions library
. /etc/init.d/functions pidfile='/var/www/run/project_name.pid'
conf='/var/www/config/project_name.ini' startcmd="/usr/bin/uwsgi --pidfile $pidfile -i $conf"
stopcmd="/usr/bin/uwsgi --stop $pidfile"
reloadcmd="/usr/sbin/uwsgi --reload $pidfile"
start() {
if ps -ef |grep -v grep |grep -q $pidfile;then
echo -n "uwsgi aleardy running ... "
echo
else
echo -n "Starting uwsgi: "
$startcmd &> /dev/null
if [ $? -eq ];then
### Create the lock file ###
success $"uwsgi startup"
echo
else
failure $"uwsgi startup"
echo && exit
fi
fi
}
stop() {
echo -n "Stopping uwsgi: "
### Stop
$stopcmd
if [ $? -eq ];then
### Now, delete the lock file ###
success $"uwsgi shutdown"
echo
else
rm -f $lockfile
failure $"uwsgi shutdown"
echo && exit
fi
} reload() {
echo -n "Reloading uwsgi: "
$reloadcmd
if [ $? -eq ];then
success $"uwsgi reload"
echo
else
failure $"uwsgi reload"
echo && exit
fi
} status() {
if ps -ef |grep -v grep |grep -q $pidfile;then
pidnum=$(cat $pidfile)
echo "uwsgi (pid $pidnum) is running..."
else
echo "uwsgi is stoped."
exit
fi
}
### main logic ###
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
sleep
start
;;
status)
status
;;
*)
echo $"Usage: $0 {start|stop|reload|restart|status}"
exit
esac
exit

第二步 配置uwsgi

$ pip install uwsgi   # 如未安装则先安装uwsgi

# vi /var/www/config/pad_math2_api.ini
[uwsgi]
;http-socket = :
socket = 127.0.0.1:
chdir = /var/www/pad_math2_api/esms/
pythonpath = /var/www/pad_math2_api/
env = DJANGO_SETTINGS_MODULE=esms.custom_settings
#module = django.core.handlers.wsgi:WSGIHandler()
module = django.core.wsgi:get_wsgi_application()
workers =
max-request =
listen =
harakiri =
enable-threads = true
master = true
daemonize = /var/www/logs/pad_math2_api.uwsgi.log

第三步 配置nginx

# server {}
# include /usr/local/nginx/conf/pythonapp/*; server {
listen ;
#server_name 192.168.0.76;
#access_log logs/pad_math2_api.log main;
#error_log logs/pad_math2_api_error.log; location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:;
}
}
server {
listen ;
server_name domain.cn www.domain.cn 101.201.48.0;
access_log /data/logs/www.domain.cn_access.log;
error_log /data/logs/www.domain.cn_error.log; server_name_in_redirect off;
if ($host != www.domain.cn) {
rewrite ^(.*)$ http://www.domain.cn$1 permanent;
} location ^~/site_media/ {
alias /data/www/yj_web/cms/site_media/;
}
location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|mov) {
access_log off; # po co mi logi obrazk¨®w :)
expires 30d;
} location ^~/ {
root /data/www/yj_web/cms/templates/html;
index index.html index.htm;
} }

.

django + ngxin + uwsgi 站点部署的更多相关文章

  1. 「Linux+Django」Django+CentOs7+uwsgi+nginx部署网站记录

    转自:http://www.usday.cn/blog/51 部署前的准备: 1. 在本地可以运行的django项目 2. 一台云服务器,这里选用Centos系统 开始部署: 首先在本地导出项目需要的 ...

  2. django+nginx+uwsgi 项目部署

    Django虽然自带一个Server,但只能作为开发时测试使用,我们需要一个可以稳定而持续的服务器对网站进行部署,比如Apache, Nginx, lighttpd等,本篇将利用nginx和uWSGI ...

  3. virtualvenv+django+uWSGI+nginx 部署

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

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

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

  5. CentOS上部署Django+Nginx+Uwsgi环境

    在CentOS上部署Django+Nginx+Uwsgi环境 奇谭  2016-09-01 评论  Linux  python django nginx uwsgi VirtualEnv的作用:创建隔 ...

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

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

  7. ubuntu18+uwsgi+nginx部署django项目

    更新系统软件源 sudo apt-get update pip3安装 sudo apt install python3-pip 安装virtualenvwrapper pip3 install vir ...

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

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

  9. Django+uWSGI+Nginx 部署网站

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

随机推荐

  1. RedHat中敲sh-copy-id命令报错:-bash: ssh-copy-id: command not found

    RedHat中敲sh-copy-id命令报错:-bash: ssh-copy-id: command not found 在多台Linux服务器SSH相互访问无需密码, 其中进入一台Linus中,对其 ...

  2. Java Hour 43 Weather ( 12 ) - 杭州 Show

    终于从fastjson 的阴影中走出来了,接下去就是显示一个完整的天气信息了. 43.1 Weather Show 首先增加Model 中的属性. public class Weatherinfo { ...

  3. [译] Web API 之 简介

    事实上,MVC 框架本身已经提供了构建REST风格服务的基础,而Web API 只是让你可以更加容易和快捷的构建REST服务. 特性 基于约定的 CRUD Actions: 自动按照HTTP的acto ...

  4. 向table添加水平滚动条

    转自:http://www.cnblogs.com/linjiqin/p/3148225.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4. ...

  5. 【Android】Android之Action Bar

    Action Bar是在窗口上指示用户位置的组件,同时给用户提供导航和操作.使用Action Bar可以让你的应用在不同配置的屏幕上看起来比较一致.在开始之前,先了解一些相关的术语: Action B ...

  6. jmeter性能测试实战-web登录测试

    一.项目背景: 网站信息: 操作系统类型 二.需求: 登录并发测试 三.场景: 1s增加两个线程,运行2000次 分别看20.40.60并发下的表现 四.监控: 成功率.响应时间.标准差.cpu.me ...

  7. 递推DP URAL 1167 Bicolored Horses

    题目传送门 题意:k个马棚,n条马,黑马1, 白马0,每个马棚unhappy指数:黑马数*白马数,问最小的unhappy值是多少分析:dp[i][j] 表示第i个马棚放j只马的最小unhappy值,状 ...

  8. ConversionPattern 解析

    Sample <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] %X{auth} - Line ...

  9. ural 1268. Little Chu

    1268. Little Chu Time limit: 0.25 secondMemory limit: 64 MB The favorite occupation of Little Chu is ...

  10. MySQL删除更新数据时报1175错误的问题

    今天删除mysql数据库中的一条记录的时候,一直不能删除,提示错误信息如下: Error Code: 1175. You are using safe update mode and you trie ...