react build 后打包发布总结


Posted in Javascript onAugust 24, 2018

一,部署在apache  web服务器上(wamp   |   xammp)

1.后台接口需要做跨域设置

(1)在服务端利用Access-Control-Allow-Origin响应头解决。

设置Access-Control-Allow-Origin:*,允许所有域名的脚本访问该资源。

如果考虑到安全问题,也可以设置Access-Control-Allow-Origin:www.build.im  允许特定域名访问

(2)服务器做反向代理

2.打包文件单独放置一个服务器

(1)把react  项目  build 打包后 复制build  里面的文件到web服务器的根目录

( 2 ) 同时需要在web根目录放置.htaccess文件,文件内容为:(当服务器出现找不到路由时自动回到index.html  路由由react-router 接管)

附备注:

前端本地开发时会存在跨域问题,如果项目是用creat-react-app cli  创建的,则直接在package.json  文件里添加  api 地址目录即可:"proxy": “www.api.com:8000” 即可解决跨域问题,如果是自己创建的项目

配置好proxy  middlle 中间件 也可以实现代理。本地fecth( ''api/userinfo", fucntion(){} ); 请求会发送到    http://www.online.com:80/api/userinfo  接口上

proxy: {
  '/api)': {
   target: 'http://www.online.com:80/',
   changeOrigin: true
  },
}
<IfModule mod_rewrite.c>
   Options +FollowSymlinks
   RewriteEngine On
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteRule ^(.*)$ index.html [QSA,PT,L]
</IfModule>

二,部署在nginx  web 服务器上

try_files 指令:配置 nginx/nginx.conf 文件

server {
 ...
 location / {
  try_files $uri /index.html
 }
}

react  build  后的文件包里的文件直接放到  nginx 下的web  目录 即可通过ip  访问

遇到的坑

1、安装使用

npm install -g create-react-app

2、生成新项目

create-react-app my-app

(生成的项目最好不要用驼峰式命名,否则后面生成文件提示也会让你改)

3、进入项目目录并预览

cd my-app
npm start

接下来就可以在你的浏览器中看到效果

用create-react-app脚手架生成的目录简单,没有多余的文件。

但是在打包的时候遇到一点小问题,npm run build后该项目会生成一个build文件,但是我点击其中的index.html文件打开后浏览器是空白页面,这是报的错:

react build 后打包发布总结

解决办法:在package.json配置文件中加一句:"homepage": ".",

react build 后打包发布总结

这是build之后的路径问题,改为相对路径后再次打开这个index.html文件就可以正常浏览了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 通过name快速取值示例
Jan 24 Javascript
jQuery中的height innerHeight outerHeight区别示例介绍
Jun 15 Javascript
jquery 操作css样式、位置、尺寸方法汇总
Nov 28 Javascript
JS中获取函数调用链所有参数的方法
May 07 Javascript
用Move.js配合创建CSS3动画的入门指引
Jul 22 Javascript
javascript中对变量类型的判断方法
Aug 09 Javascript
AngularJS入门教程之Select(选择框)详解
Jul 27 Javascript
Javascript实现倒计时(防页面刷新)实例
Dec 13 Javascript
简单三步实现报表页面集成天气
Dec 15 Javascript
原生和jQuery的ajax用法详解
Jan 23 Javascript
form表单数据封装成json格式并提交给服务器的实现方法
Dec 14 Javascript
React 使用recharts实现散点地图的示例代码
Dec 07 Javascript
vue项目部署到Apache服务器中遇到的问题解决
Aug 24 #Javascript
Vue.js获取被选择的option的value和text值方法
Aug 24 #Javascript
element-ui中select组件绑定值改变,触发change事件方法
Aug 24 #Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
Aug 24 #Javascript
浅谈ElementUI中switch回调函数change的参数问题
Aug 24 #Javascript
深入理解JS中Number(),parseInt(),parseFloat()三者比较
Aug 24 #Javascript
微信小程序支付PHP代码
Aug 23 #Javascript
You might like
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
PHP实现简易用户登录系统
2020/07/10 PHP
php的对象传值与引用传值代码实例讲解
2021/02/26 PHP
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
2011/05/24 Javascript
jquery选择器之基本过滤选择器详解
2014/01/27 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
2014/12/16 Javascript
javascript实现设置、获取和删除Cookie的方法
2015/06/01 Javascript
让JavaScript中setTimeout支持链式操作的方法
2015/06/19 Javascript
JS访问SWF的函数用法实例
2015/07/01 Javascript
Javascript实现的Map集合工具类完整实例
2015/07/31 Javascript
详解AngularJS实现表单验证
2015/12/10 Javascript
Jquery Easyui菜单组件Menu使用详解(15)
2016/12/18 Javascript
bootstrap提示标签、提示框实现代码
2016/12/28 Javascript
详解微信小程序开发之——wx.showToast(OBJECT)的使用
2017/01/18 Javascript
Postman模拟发送带token的请求方法
2018/03/31 Javascript
Vue验证码60秒倒计时功能简单实例代码
2018/06/22 Javascript
JS立即执行函数功能与用法分析
2019/01/15 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
如何通过shell脚本自动生成vue文件详解
2019/09/10 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
浅谈django rest jwt vue 跨域问题
2018/10/26 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
Python内置加密模块用法解析
2019/11/25 Python
Python如何把多个PDF文件合并代码实例
2020/02/13 Python
Python 爬取必应壁纸的实例讲解
2020/02/24 Python
在Django中预防CSRF攻击的操作
2020/03/13 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
Python定义一个Actor任务
2020/07/29 Python
HTML5的标签的代码的简单介绍 HTML5标签的简介
2012/05/28 HTML / CSS
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
酒店员工检讨书
2014/02/18 职场文书
员工教育培训协议书
2014/09/27 职场文书
用Python将GIF动图分解成多张静态图片
2021/06/11 Python
前端JavaScript大管家 package.json
2021/11/02 Javascript