Centos部署django服务nginx+uwsgi的方法
作者:瓦力冫 发布时间:2022-03-18 07:47:26
标签:Centos,django,nginx,uwsgi
1.安装python3
yum -y install wget gcc make zlib-devel readline-devel bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
xz -d Python-3.6.1.tar.xz
tar -xvf Python-3.6.1.tar
cd Python-3.6.1
./configure --prefix=/usr/local/python3.6 --enable-optimizations
make
make install
ln -s /usr/local/python3.6/bin/python3 /usr/bin/python3
ln -s /usr/local/python3.6/bin/pip3 /usr/bin/pip3
这是通过编译的方式来安装的
输入 python3 –version 和 pip3 –version 进行测试
2. 安装nginx
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
sudo yum install -y nginx
sudo systemctl start nginx.service
通过你的域名或IP来访问你的Web页面来预览一下Nginx的默认页面进行测试
3.下载代码,上传到服务器的/var/www 目录
4. 安装依赖
pip3 install django
pip3 install uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3
5. 独立运行进行测试
cd /var/www/dexundjango
python3 manage.py runserver 0.0.0.0:8014
测试通过后,Ctrl + C 停止运行
6.uwsgi
sudo mkdir -p /etc/uwsgi/sites
sudo mkdir -p /var/log/uwsgi
cd /etc/uwsgi/sites
sudo vi /etc/uwsgi/sites/mysite.ini
[uwsgi]
socket = 127.0.0.1:10000
chdir=/var/www/dexundjango
module=mysite.wsgi:application
master=True
pidfile=/tmp/project-master.pid
vacuum=True
max-requests=5000
daemonize=/var/log/uwsgi/mysite.log
7. nginx 配置
vi /usr/local/nginx/conf/nginx.conf (根据本地的配置路径)
find / -name uwsgi_params 来替换下面的uwsgi_params路径
server {
listen 8014; #暴露给外部访问的端口
server_name localhost;
charset utf-8;
location / {
include /usr/local/nginx/conf/uwsgi_params;
uwsgi_pass 127.0.0.1:10000; # 必须和uwsgi.ini配置的端口一致
}
location /static/ {
alias /home/www/dexundjango/trade/static/; #项目静态路径设置
}
8. 启动uwsgi
uwsgi3 --ini /etc/uwsgi/sites/mysite.ini
9. 开机启动uwsgi
vi /etc/init.d/uwsgi
#!/bin/bash
# chkconfig: - 85 15
uwsgi=/usr/bin/uwsgi3
api_conf=/etc/uwsgi/sites/mysite.ini
case $1 in
start)
echo -n "Starting uWsgi"
nohup $uwsgi -i $api_conf >/var/log/uwsgi/project-api.log 2>&1 &
echo " done"
;;
stop)
echo -n "Stopping uWsgi"
killall -9 uwsgi
echo " done"
;;
restart)
$0 stop
$0 start
;;
show)
ps -ef|grep uwsgi
;;
*)
echo -n "Usage: $0 {start|restart|stop|show}"
;;
esac
chmod +x /etc/init.d/uwsgi
chkconfig --add uwsgi
chkconfig uwsgi on
来源:http://www.waitingfy.com/archives/5235
0
投稿
猜你喜欢
- 前后端分离前后端分离的好处最大的好处就是前端JS可以做很大部分的数据处理工作,对服务器的压力减小到最小。后台错误不会直接反映到前台,错误接秒
- 使用pandas读取xml文件报错“ Unsupported format, or corrupt file: Expected BOF r
- 一、Golang环境安装及配置Go Modulehttps://go-zero.dev/cn/docs/prepare/golang-ins
- 本文实例讲述了Python3实现的回文数判断及罗马数字转整数算法。分享给大家供大家参考,具体如下:回文数判断一个整数是否是回文数。回文数是指
- 本文实例为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下一.面向过程版import osstu_list = [
- 前言:以往看到我博客的小伙伴可能都知道,我的前言一般都是吐槽和讲废话环节,哈哈哈哈。今天难得休息,最近可真是太忙了,博主已经连续一年都在99
- 思路:创建文件时,先检查是否有同名文件(使用os.path.isfile),如果有,则在文件名后加上编号n来创建。关键点:1. 使用os.p
- 使用Python爬虫登录系统之后,能够实现的操作就多了很多,下面大致介绍下如何使用Python模拟登录。我们都知道,在前端的加密验证,只要把
- 本文实例为大家分享了Python实现图像增强的具体代码,供大家参考,具体内容如下题目描述:对于下面这幅图像(图 1),请问可以通过那些图像增
- html页面一般都会指定一个编码,如何获取到是处理html页面的第一步,因为错误的编码必然带来后面处理的问题。这里我用python的正则表达
- 阅读:Chapter 3 * 的表格“Misquotations are the only quotations tha are never
- 比如有两个模块,一个aa.py,一个bb.py 代码如下:aa.py:#encoding:utf-8import bba=1bb.py:#e
- 利用XMLHTTP无刷新自动实时更新数据,2秒自动刷新一次,2秒取得一次数据.demo.htm 前台显示<script la
- 学过 Python 的朋友应该都知道 f-strings 是用来非常方便的格式化输出的,觉得它的使用方法无外乎就是 print(f'
- (1)、back_log:要求 MySQL 能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程
- 前言:这个先来创建一个模块,名称为christmastree,在该模块中,首先定义一个全局变量,然后创建一个名称为fun_christmas
- 观察者模式结构图概念一个"演员"(被观察者),一群"观众"(观察者),一台"摄影机&quo
- <% Dim aData aData = Array(3,2,4,1,6
- interfaceGo语言里面设计最精妙的应该算interface,它让面向对象,内容组织实现非常的方便,当你看完这一章,你就会被inter
- 本文实例讲述了python版本的读写锁操作方法。分享给大家供大家参考,具体如下:最近要用到读写锁的机制,但是python2.7的自带库里居然