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. Visual Studio 添加图标和版本

    在Visual Studio中,如果你创建的是纯C语言的工程,那么给可执行程序添加图标就没有便捷的入口. 但也只是入口不好找了,添加步骤还是比较简单的,以下为具体操作方法:     1. 右键点击C工 ...

  2. java 8 Streams简介

    目录 简介 Functional Interface Function:一个参数一个返回值 BiFunction:接收两个参数,一个返回值 Supplier:无参的Function Consumer: ...

  3. 【Linux常见命令】cp命令

    cp - copy files and directories 拷贝文件或目标文件夹,默认不能直接拷贝目录,通过-r参数设置递归复制目录 copy 语法: cp [OPTION]... [-T] SO ...

  4. python的sqlalchemy框架

    先看一下sqlalchemy框架中的映射,sqlalchemy一共有三种映射方式:传统映射(classic).现代化映射(modern).自定义映射.在这里,只为大家讲一下classic映射和mode ...

  5. mac OS npm 安装/卸载失败 权限问题解决方案

    在终端输入 sudo chown -R $USER /usr/local 输入开机密码

  6. 日日算法:Dijkstra算法

    介绍 Dijistra算法作为一种最短路径算法,可以用来计算一个节点到图上其他节点的最短距离. 主要是通过启发式的思想,由中心节点层层向外拓展,直到找到中点. 适用于无向图和有向图. 算法思想 假设我 ...

  7. Java反射详细介绍

    反射 目录介绍 1.反射概述 1.1 反射概述 1.2 获取class文件对象的三种方式 1.3 反射常用的方法介绍 1.4 反射的定义 1.5 反射的组成 1.6 反射的作用有哪些 2.反射的相关使 ...

  8. 团队中的 Node.js 具体实践

    前天,我们公司前端团队的几个人一起去大搜车参加了芋头所组织的「搜车 Node Party」.这是我第一次参加与 Node.js 相关的线下聚会,如果不算「杭JS」的话. 聚会现场 这次聚会的主题全部是 ...

  9. (PSO-BP)结合粒子群的神经网络算法以及matlab实现

    原理:           PSO(粒子群群算法):可以在全局范围内进行大致搜索,得到一个初始解,以便BP接力           BP(神经网络):梯度搜素,细化能力强,可以进行更仔细的搜索.数据: ...

  10. python 中关于无法导入自己写的类。解决方法

    1.错误描述 之前在学习python的过程中,导入自己写入的包文件时.from 自己写的类,会发现没有弹出选择.并且全输入类名称后会发现类名与相关导入的方法会爆红.如图: 2.原因分析 pycharm ...