前后端分离,vue前端提供静态页面,且可以向后台发起get,post等restful请求。
django后台提供数据支撑,返回json数据,返回给vue,进行数据页面渲染
后端
创建虚拟环境 解决django文件的环境依赖
pip install 环境依赖包
(通过windows转至linux环境下 处理windows环境下环境依赖
(pip freeze > requirements.txt : 将windows下python所需要的包 写入requirements.txt中
在linux中通过命令安装 pip3 install -r requirements.txt )
(创建requirements.txt 需要的包写入, 在linux中通过命令安装 pip3 install -r requirements.txt)
)
安装uwsgi
(pip install uwsgi)
启动方式 1 用参数启动 (uwsgi --socket :8000 --module luffy_boy.wsgi)
启动方式2:用配置文件启动
在项目的中 创建 uwsgi.ini 文件 写入配置
[uwsgi]
# Django-related settings
# the base directory (full path) 项目的绝对路径
chdir = /opt/luffy_boy
# Django's wsgi file 带有wsgi.py的文件路径(相对路径)
module = luffy_boy.wsgi
# the virtualenv (full path)
home = /root/Envs/s17luffy 虚拟环境的路径 (cdvirtualenv 进入 pwd查看 )
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 1
# the socket (use the full path to be safe
socket = 0.0.0.0:6666
# ... with appropriate permissions - may be needed
# chmod-socket = 664
# clear environment on exit
vacuum = true
启动命令(uwsgi --ini uwsgi.ini)
前端 vue
node准备
准备node环境 下载node环境包 (wget
https://nodejs.org/download/release/v8.6.0/node-v8.6.0-linux-x64.tar.gz)
解压 (tar -zxvf 包名) (unzip 包名) 压缩 (tar -zcvf 文件 )
添加环境变量 (vim /etc/profile ) 刷新 环境变量 ( source /etc/profile ) 查看 (echo $PATH)
开始编译打包前端vue文件
修改vue文件 vue文件下的/src/restful/api.js
修改 成当前服务器的ip和端口号 全局修改文件 ( sed -i 's/需要修改的的内容/修改后的内容/g ' vue文件的绝对路径/src/restful/api.js)
进入 vue文件 找到找到package.json,安装它的内容 (npm install)
编译打包vue代码,这一步会生成dist静态文件夹,用于nginx展示 (npm run build )
配置nginx
修改nginx.conf 需要两个虚拟主机
虚拟主机1 用于找到vue页面
server {
listen 80;
server_name localhost; # 访问的地址
location / {
root /opt/s17luffy/dist; # 展示vue页面 dist的绝对路径
index index.html;
}
}
虚拟主机2 用于反向代理 找到django
server{
listen 8000;
server_name localhost;
location / {
include uwsgi_params;
uwsgi_pass 0.0.0.0:6666;
}
}
重启nginx使配置生效 (nginx -s reload )
redis数据库
启动redis数据库 ( redis-server redis.conf )