vue2 + koa2全栈部署
1.首先打包前端上传
修改config下的index.js 代理地址为服务器IP
2.打包所有后端代码上传服务器
3.配置在linux下的环境:
(1) 安装node, npm, nvm, pm2, mysql, nginx
(2) 先安装,nvm,即是Node Version Manager(Node版本管理器)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
或者使用 wget
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
之后需要激活nvm:
$ source ~/.nvm/nvm.sh
激活完成后,安装node
nvm install node
安装完成后,切换到该版本
nvm use node
(3)安装pm2
(4)安装mysql https://www.cnblogs.com/dingjiaoyang/p/5110546.html 导入数据库先把数据库从本地导出,然后上传到linux上莫个地方然后导入
(5)安装nginx https://www.cnblogs.com/lauren1003/p/5985206.html or 检查端口是否被占用 netstat -apn | grep 80 whereis httpd cd /etc/httpd/ ll cd conf ll -al vim httpd.conf curl http://127.0.0.1:8000/realtimedata IP是否OK /改反向代理
<VirtualHost *:80>
ProxyPass /realtimedata http://127.0.0.1:8000/realtimedata
# vvkoa 接口反向代理
ProxyPass /vvkoa-api http://127.0.0.1:8889
</VirtualHost>
如何查看Apache安装路径:
①tarball等安装:
whereishttpd //查看httpd的位置,或者可以用whichhttpd查看。
②rpm包形式
rpm-aq|grephttp //查看是否安装了apache包,若已安装,则会打印出包名
rpm-qi输入获取到的包名 //查看该apache包信息
rpm-ql输入包名 //查看apache包中所有文件的安装位置
https://jingyan.baidu.com/article/ac6a9a5e34ab732b653eac8e.html
一、问题描述
react单页应用使用了BrowserRouter 路由(HTML5 history API ),项目打包后,使用apache服务器访问http://www.ceshi.com/userinfo,能够正常显示,但是刷新后页面404了
二、问题原因
刷新页面时访问的资源在服务端找不到,因为react-router设置的路径不是真实存在的路径。
如上的404现象,是因为在apache配置的根目录下面压根没有userinfo这个真实资源存在,这些访问资源都是在js里渲染的。
三、解决方案
1:进入apache目录的conf目录
2:打开httpd.conf
3:找到#LoadModule rewrite_module modules/mod_rewrite.so然后把前面的#去掉
4:找到所有的AllowOverride配置项,把所有的None都修改为All
5:在网站根目录下面新建一个 .htaccess 文件(什么?这个文件不会添加?先新建一个txt,然后另存为 .htaccess文件就行),输入一下内容
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
6:重启apache
vue2 + koa2全栈部署的更多相关文章
- Vue+koa2开发一款全栈小程序(1.课程介绍+2.ES6入门)
1.课程介绍 1.课程概述 1.做什么? Vue+koa2开发一款全栈小程序 2.哪些功能? 个人中心.图书列表.图书详情.图书评论.个人评论列表 3.技术栈 小程序.Vue.js.koa2.koa- ...
- 一款基于SSM框架技术的全栈Java web项目(已部署可直接体验)
概述 此项目基于SSM框架技术的Java Web项目,是全栈项目,涉及前端.后端.插件.上线部署等各个板块,项目所有的代码都是自己编码所得,每一步.部分都有清晰的注释,完全不用担心代码混乱,可以轻松. ...
- Express+Mongoose(MongoDB)+Vue2全栈微信商城项目全记录(二)
用mogoose搭建restful测试接口 接着上一篇(Express+Mongoose(MongoDB)+Vue2全栈微信商城项目全记录(一))记录,今天单独搭建一个restful测试接口,和项目前 ...
- vue3+node全栈项目部署到云服务器
一.前言 最近在B站学习了一下全栈开发,使用到的技术栈是Vue+Element+Express+MongoDB,为了让自己学的第一个全栈项目落地,于是想着把该项目部署到阿里云服务器.经过网上一番搜索和 ...
- web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2)
web全栈后台权限管理系统(VUE+ElementUi+nodeJs+koa2) 主要技术 前端 vue 全家桶 ElementUI 后端 Node.js Koa2 Mongoess 数据库 mong ...
- 全栈项目|小书架|服务器端-NodeJS+Koa2 实现书籍详情接口
通过上篇文章 全栈项目|小书架|微信小程序-首页水平轮播实现 我们实现了前端(小程序)效果图的展示,这篇文章来介绍服务器端的实现. 书籍详情分析 书籍详情页面如下: 从上图可以分析出详情页面大概有以下 ...
- 全栈项目|小书架|服务器端-NodeJS+Koa2实现首页图书列表接口
通过上篇文章 全栈项目|小书架|微信小程序-首页水平轮播实现 我们实现了前端(小程序)效果图的展示,这篇文章来介绍服务器端的实现. 首页书籍信息 先来回顾一下首页书籍都有哪些信息: 从下面的图片可以看 ...
- vuejs、eggjs全栈式开发设备管理系统
vuejs.eggjs全栈式开发简单设备管理系统 业余时间用eggjs.vuejs开发了一个设备管理系统,通过mqtt协议上传设备数据至web端实时展现,包含设备参数分析.发送设备报警等模块.收获还是 ...
- 一个 Vue & Node 的全栈小项目
约学 - 可以寻找一起自习的小伙伴的Web APP 一个基于 Vue & Node 的移动端全栈小项目 在线演示(请使用移动端查看效果) 源码地址: https://github.com/G- ...
随机推荐
- SSM项目配置文件DEMO
SSM相关配置文件 <spring-mvc.xml>文件 <?xml version="1.0" encoding="UTF-8"?> ...
- lnmp高人笔记
http://www.cnblogs.com/qizekai/p/5878774.html http://www.cnblogs.com/qizekai/p/5879461.html
- sql server 的存储过程
存储过程说白了就是一堆 SQL 的合并.中间加了点逻辑控制. 存储过程运行流程 创建不带参数存储过程 --创建存储过程 if (exists (select * from sys.objects wh ...
- Android开发 SeekBar开发记录
前言 开发记录博客不是讲解使用博客,更多的是各种功能与点子的记录 基本使用 <SeekBar android:layout_width="match_parent" andr ...
- 删除除了特指的某几个文件外的所有文件的Linux指令
栗子: 不删除 logs文件夹和credential文件夹 1. rm -rf !(logs|credential) 2. ls | grep -v logs |grep -v credenti ...
- android gradle 和gradle plugin
android gradle 和gradle plugin 1.安装完AS3.5.2创建完项目一运行,报了如下错误 Error:Could not find com.android.tools.bui ...
- js面试总结3
异步和单线程 题目: 1.同步和异步的区别? 2.一个关于setTimeout的笔试题. 3.前段使用异步的场景有哪些? 什么是异步? console.log(100) setTimeout(func ...
- iOS开发NSLayoutConstraint代码自动布局
1.NSLayoutConstraint简介 适配界面大多用Masonry工具,也是基于NSLayoutConstraint写的!通过使用两个类方法实现自动布局: + (NSArray<__ki ...
- vue-grid-layout
vue-grid-layout vue-grid-layout is a grid layout system, like Gridster, for Vue.js. Heavily inspi ...
- 接着上回,导包正确之后,出现javabean.Friend cannot be cast to java.util.List,的错误。找了很久。以为是User user0作为参数,改成了String username还是错误,看了看listFriend.jsp没有错误,我想会不会是包多了,导致类型复杂。最后发现包少了一个:
import org.apache.commons.dbutils.handlers.BeanListHandler;这个包,BeanListHandler让我发现List<Friend> ...