Vue+Django前后端分离项目部署,nginx默认端口80,数据提交监听端口9000,反向代理(uwsgi配置)端口9999  

1.下载项目文件(统一在/opt/luffyproject目录)

  (1)前端vue--------------wget https://files.cnblogs.com/files/pyyu/07-luffy_project_01.zip

  (2)后端django---------wget https://files.cnblogs.com/files/pyyu/luffy_boy.zip

  (3)解压-----------------unzip解压(如需实际操作,项目文件可以直接联系博主)

2.vue框架依赖的nodejs

  (1)下载nodejs--------wget https://nodejs.org/download/release/v8.6.0/node-v8.6.0-linux-x64.tar.gz

  (2)解压-----------------tar -zxvf node-v8.6.0-linux-x64.tar.gz

  (3)进入源码包:bin文件夹存在,说明已经编译好,查看是否可用以下命令:

      ------node -v

      ------npm -v

  (4)添加nodejs源码包bin目录到环境变量:

      ------vim /etc/profile

      ------PATH='/opt/tengine231/sbin:/opt/python3.6/bin:/usr/local/sbin:

            /usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:

            /opt/luffyproject/node-v8.6.0-linux-x64/bin'

3.配置前端vue的静态文件请求路径

  (1)前端项目/top/luffyproject/07-luffy_project_01/src/restful/api.js

  (2)修改api.js中的请求ip和端口----sed -i 's/127.0.0.1:8000/192.168.160.134:9000/g' api.js

  (3)注意在项目部署的服务器ip变化时需要更改配置,同时重新执行npm install和 npm run build进行编译生成dist静态文件

4.编译前端vue代码

  (1)npm install----网速不好可以先修改npm下载源:npm config set registry https://registry.npm.taobao.org

  (2)npm run build--/top/luffyproject/07-luffy_project_01/中种生成一个dist静态文件夹,作为nginx.conf中的server{}匹配的root根目录

  (3)注意:如果使用虚拟机,ip可能会自动改变,需重新编译

5.配置nginx.conf

  (1)前端vue静态文件返回配置

location / {

  root /opt/luffyproject/07-luffy_project_01/dist;

  index index.html index.htm;

  #确保刷新不出现404

  try_files $uri $uri/ /index.html;

}

  (2)后端django服务反向代理配置

server {

  listen 9000;

  server_name localhost;

  location / {

    include uwsgi_params;

    uwsgi_pass 0.0.0.0:9999;

  }

} 

  (3)启动nginx------nginx

6.前端vue静态页面已经部署完成

7.django项目的虚拟环境配置

  创建虚拟环境-------mkvirtualenv luffy_env4

  已创建有直接开启------workon luffy_env4

8.配置uwgis

  (1)进入后端django项目---------cd /opt/luffyproject/luffy_boy

  (2)启动测试django项目:

      启动django项目---------python3 manage.py runserver 0.0.0.0:9003

      报错根据提示在该虚拟环境内处理下载需要的包

         pip3 install django==2.0

           ........     

           pip3 install -r requirements.txt(批量下载)     

  (3)下载uwsgi模块 ---------pip3 install uwsgi

  (4)手动创建uwsgi.ini文件,写入配置:

[uwsgi]

# Django-related settings

# the base directory (full path)

chdir = /opt/luffyproject/luffy_boy

# Django's wsgi file

module = luffy_boy.wsgi

# the virtualenv (full path)

home = /root/Envs/luffy_env4

# process-related settings

# master

master = true

# maximum number of worker processes

processes = 2

# the socket (use the full path to be safe

#以socket请求与nginx结合

socket = 0.0.0.0:9999

#以http请求可以直接在刘昂器发起访问,测试用

#http =0.0.0.0:9999

# clear environment on exit

vacuum = true

#设置守护进程,后台运行,也可指定文件,输出日志

daemonize=yes

  (5)启动uwsgi--------uwsgi --ini uwsgi.ini

  (6)uwsgi以http形式进行测试访问:

      浏览器直接访问ip端口

      部分功能无法实现,缺少redis数据库

  (7)物理环境安装redis数据库  

       yum install redis

      systemctl start redis

      systemctl status redis

      redis-cli--> ping----------启动redis客户端ping是否得到PONG

  (8)修改uwsgi.ini以socket形式结合nginx

  (9)退出虚拟环境--------deactivate

9.重启nginx--------nginx -s reload

nginx+vue+uwsgi+django的前后端分离项目部署的更多相关文章

  1. Docker环境下的前后端分离项目部署与运维

    本教程将从零开始部署一个前后端分离的开源项目,利用docker虚拟机的容器技术,采用分布式集群部署,将项目转换成为高性能.高负载.高可用的部署方案.包括了MySQL集群.Redis集群.负载均衡.双机 ...

  2. 前后端分离项目部署到Linux虚拟机

    最近做了一个springboot+vue的前后端分离项目,把它部署到Linux虚拟机上.下面是我的步骤和遇到的问题,需要的朋友可以看下(看的时候注意要全部看完到底部,因为我习惯是把我遇到的问题放到最后 ...

  3. Django前后端分离项目部署

    vue+drf的前后端分离部署笔记 前端部署过程 端口划分: vue+nginx的端口 是81 vue向后台发请求,首先发给的是代理服务器,这里模拟是nginx的 9000 drf后台运行在 9005 ...

  4. vue.js+UEditor集成 [前后端分离项目]

    首先,谈下这篇文章中的前后端所涉及到的技术框架内容. 虽然是后端的管理项目,但整体项目,是采用前后端分离的方式完成,这样做的目的也是产品化的需求: 前端,vue+vuex+vue router+web ...

  5. SpringBoot+Vue豆宝社区前后端分离项目手把手实战系列教程01---搭建前端工程

    豆宝社区项目实战教程简介 本项目实战教程配有免费视频教程,配套代码完全开源.手把手从零开始搭建一个目前应用最广泛的Springboot+Vue前后端分离多用户社区项目.本项目难度适中,为便于大家学习, ...

  6. uwsgi加nginx部署django restframework前后端分离项目

    一.uwsgi和nginx简介 1.uwsgi(摘抄于百度百科): uWSGI是一个Web服务器,它实现了WSGI协议.uwsgi.http等协议.Nginx中HttpUwsgiModule的作用是与 ...

  7. 云计算:Ubuntu下Vue+Springboot前后端分离项目部署(多节点)

    一.机器准备 首先准备三台机器: 我是一台WINDOWS系统主机,在WINDOWS里的 VMware 中安装两台Ubuntu系统虚拟机 如果你的虚拟机只有 CentOS,可以参考这篇文章:https: ...

  8. Docker环境下的前后端分离项目部署与运维(九)后端项目部署与负载均衡

    数据库准备 建立数据库 renren_fast ,然后运行renrenfast项目中的db文件夹内的脚本 -- 菜单 CREATE TABLE `sys_menu` ( `menu_id` bigin ...

  9. SpringBoot+Vue豆宝社区前后端分离项目手把手实战系列教程02---创建后端工程

    本节代码开源地址 代码地址 项目运行截图 搭建后端工程 0.导入sql 在数据库导入 /* Navicat Premium Data Transfer Source Server : localhos ...

随机推荐

  1. js事件冒泡于事件捕获

    事件冒泡 事件捕获指的是从document到触发事件的那个节点,即自上而下的去触发事件. 事件冒泡是自下而上(从最深节点开始,向上传播事件)的触发事件 //例子 <div id="pa ...

  2. 如何使用Markdown 编写文档

    Markdown 是一种轻量级标记语言,用来编写文本文档,一般后缀名为.md.该语言在 2004 由约翰·格鲁伯(John Gruber)创建. 由于Markdown 语法简单,易读易写,变得越来越通 ...

  3. 一款被大厂选用的 Hexo 博客主题

    首先这是一篇自吹自擂的文章,主题是由多位非前端程序员共同开发,目前经过一年半的迭代已经到达 v1.8.0 版本,并且获得大量认可,甚至某大厂员工已经选用作为内部博客,因此我决定写这篇文章向更多人安利它 ...

  4. [转]Git详解之四 服务器上的Git

    服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做 ...

  5. centos分配IP脚本--写的第一个shell脚本

    IDC小菜鸟一枚,非科班出身.常常有客户的centos服务器需要分配15个IP甚至30个IP.每次需要手动分配十分麻烦,于是花了一天时间学了shell脚本,写了这个脚本. #!/bin/bash re ...

  6. 如何在mysql中实现自然排序

    背景 熟悉mysql的同学应该清楚,mysql在对字符串做order by排序时是按照字典序进行排序的,但是如果字符串中包含数字的话(我们称这种类型的字符串为alphanumeric),仅按照字典序的 ...

  7. POJ2155/LNSYOJ113 Matrix【二维树状数组+差分】【做题报告】

    这道题是一个二维树状数组,思路十分神奇,其实还是挺水的 题目描述 给定一个N∗NN∗N的矩阵AA,其中矩阵中的元素只有0或者1,其中A[i,j]A[i,j]表示矩阵的第i行和第j列(1≤i,j≤N)( ...

  8. nodeJS中express框架设置全局跨域请求头

    //设置跨域请求头 router.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin&qu ...

  9. zabbix tigger 设置

    设置一个内存在10分钟内持续低于某值才告警: 设置方法: 修改模板的tigger   configuration - > Template OS linux Active(选择自己的模板)-&g ...

  10. electron-vue 运行项目时会报Electron Security Warning (Node.js Integration with Remote Content)警告

    使用electron-vue时,运行项目总会出现如下警告: 解决方法:在src/renderer/main.js中加入: process.env['ELECTRON_DISABLE_SECURITY_ ...