1. 安装python3.6
1. 获取wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
tar -xzvf Python-3.6.2.tgz -C  /tmp
cd  /tmp/Python-3.6.2/2. 把Python3.6安装到 /usr/local 目录./configure --prefix=/usr/local
make
make altinstall3. 更改/usr/bin/python链接ln -s /usr/local/bin/python3.6 /usr/bin/python3
2. maridb
1. 安装sudo yum install mariadb-server
2. 启动, 重启sudo systemctl start mariadbsudo systemctl restart mariadb3. 设置bind-ipvim /etc/my.cnf在 [mysqld]:下面加一行bind-address = 0.0.0.04. 设置外部ip可以访问先进入mysql才能运行下面命令:mysql 直接进入就行GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;FLUSH PRIVILEGES5. 设置阿里云的对外端口视频中有讲解这部分6. 安装mysqlclient出问题centos 7:yum install python-devel mariadb-devel -yubuntu:sudo apt-get install libmysqlclient-dev然后:pip install mysqlclient
3. 安装nginx
https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7
4. 安装virtualenvwrapper
yum install python-setuptools python-devel
pip install virtualenvwrapper
编辑.bashrc文件
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
重新加载.bashrc文件
source  ~/.bashrc新建虚拟环境
mkvirtualenv mxonline进入虚拟环境
workon mxonline安装pip包
我们可以通过 pip freeze > requirements.txt 将本地的虚拟环境安装包相信信息导出来然后将requirements.txt文件上传到服务器之后运行:pip install -r requirements.txt
安装依赖包
5. 安装uwsgi
pip install uwsgi
6. 测试uwsgi
uwsgi --http :8000 --module MxOnline.wsgi
7. 配置nginx
新建uc_nginx.conf# the upstream component nginx needs to connect to
upstream django {
# server unix:///path/to/your/mysite/mysite.sock; # for a file socket
server 127.0.0.1:8000; # for a web port socket (we'll use this first)
}
# configuration of the serverserver {
# the port your site will be served on
listen      80;
# the domain name it will serve for
server_name 你的ip地址 ; # substitute your machine's IP address or FQDN
charset     utf-8;# max upload size
client_max_body_size 75M;   # adjust to taste# Django media
location /media  {alias 你的目录/Mxonline/media;  # 指向django的media目录
}location /static {alias 你的目录/Mxonline/static; # 指向django的static目录
}# Finally, send all non-media requests to the Django server.
location / {uwsgi_pass  django;include     uwsgi_params; # the uwsgi_params file you installed
}
}
8. 将该配置文件加入到nginx的启动配置文件中
sudo ln -s 你的目录/Mxonline/conf/nginx/uc_nginx.conf /etc/nginx/conf.d/
8. 拉取所有需要的static file 到同一个目录
在django的setting文件中,添加下面一行内容:STATIC_ROOT = os.path.join(BASE_DIR, "static/")
运行命令python manage.py collectstatic
9. 运行nginx
sudo /usr/sbin/nginx

这里需要注意 一定是直接用nginx命令启动, 不要用systemctl启动nginx不然会有权限问题

10. 通过配置文件启动uwsgi
新建uwsgi.ini 配置文件, 内容如下:# mysite_uwsgi.ini file[uwsgi]# Django-related settings# the base directory (full path)chdir           = /home/bobby/Projects/MxOnline# Django's wsgi filemodule          = MxOnline.wsgi# the virtualenv (full path)# process-related settings# mastermaster          = true# maximum number of worker processesprocesses       = 10# the socket (use the full path to be safesocket          = 127.0.0.1:8000# ... with appropriate permissions - may be needed# chmod-socket    = 664# clear environment on exitvacuum          = truevirtualenv = /home/bobby/.virtualenvs/mxonlinelogto = /tmp/mylog.log注:chdir: 表示需要操作的目录,也就是项目的目录module: wsgi文件的路径processes: 进程数virtualenv:虚拟环境的目录workon mxonline
uwsgi -i 你的目录/Mxonline/conf/uwsgi.ini &
访问
http://你的ip地址/

学习来自:http://www.projectsedu.com/,如有侵权请联系我,马上删除

转载于:https://www.cnblogs.com/xinjie57/p/10524188.html

centos7 下通过nginx+uwsgi部署django应用相关推荐

  1. nginx+uwsgi部署Django

    本篇文章主要介绍了解决nginx+uwsgi部署Django的所有问题(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 最近,自己暑假写的小项目也算完毕了,想着投放 ...

  2. 【转】Nginx+uWSGI 部署 Django 应用

    原文来自: http://www.oschina.net/question/54100_30386 http://obmem.info/?p=703 常见的django webapp 部署方式采用FC ...

  3. CENTOS7 使用 Nginx + Uwsgi 部署 Django 项目

    写在前面的话 最近总是见到有新学 Django 的朋友在部署自己的项目到 Linux 上面的时候运行不起来,所以就动手写了这篇博客. 对于不会搭建 Python 3 环境的朋友可以参考前面的博客[CE ...

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

    1.linux安装python3环境 参考链接:https://www.cnblogs.com/zzqit/p/10087680.html 2.安装uwsgi pip3 install uwsgiln ...

  5. Ubuntu nginx+uwsgi部署Django项目

    前提条件:首先项目使用一下命令启动成功后,输入公网ip后可以启动成功 python manage.py runserver 0.0.0.0:80 一.阿里云配置安全组 添加8000端口 二.安装配置u ...

  6. centos7根据端口查进程_记录一次CentOs7下Nginx+WSGI部署Django项目(超详细)

    记录一次Django部署的文章,不是很熟悉Linux系统,踩了不少坑,本篇文章相当于是一个总结,我会在本文中详细介绍,部署单个Django项目和多个Django的方法,如读者有更好的方法,欢迎留言一起 ...

  7. Nginx + uWSGI + Python + Django部署实例

    Nginx: Nginx 是一个高性能的 Web 和反向代理服务器, 它具有有很多非常优越的特性: 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的 ...

  8. Centos7下使用Ceph-deploy快速部署Ceph分布式存储

    #Centos7下使用Ceph-deploy快速部署Ceph分布式存储 CEPH 简介  不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 C ...

  9. 阿里云服务器ECS centos7.4搭建nginx环境部署静态代码

    阿里云服务器ECS centos7.4搭建nginx环境部署静态代码 欢迎来到新手如何通过阿里云服务器部署静态网站 作为一个前端开发,第一次部署自己的私人网站,没有经验,战战兢兢,但是没有办法,成为全 ...

最新文章

  1. 内存、性能问题分析的利器——valgraind
  2. redis安装步骤(单机配置)
  3. Nacos 2.0的Spring Boot Starter来了!
  4. java 富文本编辑器的标签处理数据 从数据库中取出 并返回前台
  5. ViewPager实现页面切换
  6. element-ui el-radio 回显格式为中文 传值格式为数值
  7. C++设计模式-中介者模式
  8. MYSQL添加约束的两种方法
  9. 服务器重置密码后无法启动不了怎么办,Windows Server 2008 R2 忘记密码的处理方法...
  10. oracle的热备份和冷备份
  11. 11.PHP memcache 与 memcached 区别
  12. 基于MATLAB的列车防护曲线组合步长算法分析与仿真验证
  13. Python - PyMuPDF (fitz) 处理 PDF
  14. linux中文找不到resource,linux :Resource temporarily unavailable错误解决
  15. lintcode 168. 吹气球 动态规划
  16. 关于Windows Xp的一些美化
  17. Mac上启动、关闭、重启MySQL服务
  18. python制作一个菜单_用CSS打造一个图形化的汉堡菜单
  19. 基于微信小程序电影交流平台源码成品(微信小程序毕业设计)
  20. Mixly按键控制LED灯

热门文章

  1. ant4 多个form 验证_ant-design表单处理和常用方法及自定义验证操作
  2. xp 硬盘安装linux双系统,WinXP硬盘安装Ubuntu 11.10双系统全程图解
  3. elf section类型_在 498 行极小 OS 上跑标准 ELF 程序
  4. mysql计算本月的天数_Mysql已知年、月,求起始日期,本月天数
  5. springboot做网站_Github 上 Star 最多的个人 Spring Boot 开源学习项目
  6. latex subsection_利用LaTeX批量寫作「平安經」
  7. 【若依(ruoyi)】启动时,卡死在:Using existing EHCache named [loginRecordCache]
  8. windows SVN服务器软件
  9. 【sprinb-boot】lib分离打包
  10. java: jmap 查看内存信息