nginx上部署react项目的实例方法

 更新时间:2019年02月15日 11:38:12   作者:vVvlife  
今天小编就为大家分享一篇关于nginx上部署react项目的实例方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

测试项目:react-demo

  1. 克隆你的react-demo项目到服务器上(默认使用Github管理我们的项目)
  2. 如果需要,请安装项目环境,比如:node.js,yarn等
  3. 进入项目目录,执行npm run build,开始构建项目
  4. 构建成功之后,会生成一个dist文件夹(取决于你的项目配置),这个文件夹里的静态文件,就是我们的项目的访问文件了,
  5. 配置Nginx,Linux服务器是进入到:/etc/nginx/sites-enabled,然后以管理员身份,新建一个你的react项目的配置文件,比如:react-demo.conf,然后,编辑文件:
server {
  listen 8080;
  # server_name your.domain.com;
  root /home/root/react-demo/dist;
  index index.html index.htm;
  location / {
    try_files $uri $uri/ /index.html;
  }
  location ^~ /assets/ {
    gzip_static on;
    expires max;
    add_header Cache-Control public;
  }
  error_page 500 502 503 504 /500.html;
  client_max_body_size 20M;
  keepalive_timeout 10;
}

执行sudo service nginx restart重启Nginx服务,

访问项目,http://IP:8080/

注意事项:

1、配置域名的话,需要80端口,成功后,只要访问域名即可访问的项目

2、如果你使用了React-Router的browserHistory 模式,请在Nginx配置中加入如下配置:

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

原理,因为我们的项目只有一个根入口,当输入类似/home的url时,找不到这个页面,这是,nginx会尝试加载index.html,加载index.html之后,react-router就能起作用并匹配我们输入的/home路由,从而显示正确的home页面,,如果browserHistory模式的项目没有配置上述内容,会出现404的情况。

可参考react-router文档:

https://react-guide.github.io/react-router-cn/docs/guides/basics/Histories.html

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • NGINX配置目录遍历漏洞的解决

    NGINX配置目录遍历漏洞的解决

    目录遍历是一种安全漏洞,通常会影响Nginx服务器上的Web应用程序,本文就来介绍一下NGINX配置目录遍历漏洞的解决,感兴趣的可以了解一下
    2023-10-10
  • Nginx中IF、AND、OR语句用法实例

    Nginx中IF、AND、OR语句用法实例

    这篇文章主要介绍了Nginx中IF、AND、OR语句用法实例,本文讲解的是Ningx中的逻辑判断语句用法,需要的朋友可以参考下
    2015-02-02
  • Nginx轻松搞定跨域问题完整过程

    Nginx轻松搞定跨域问题完整过程

    这篇文章主要给大家介绍了关于Nginx轻松搞定跨域问题的相关资料,大家在使用nginx进行服务器管理,经常会遇到跨域问题,文中将解决方法介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • Docker部署nginx实现过程图文详解

    Docker部署nginx实现过程图文详解

    这篇文章主要介绍了Docker部署nginx实现过程图文详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Nginx中配置HTTP2协议的方法

    Nginx中配置HTTP2协议的方法

    HTTP2协议是HTTP的重大升级,提供多路复用、头部压缩和服务器推送等优点,正确配置HTTP2可以为用户提供更快、更流畅的访问体验,提升网站竞争力,本文就来介绍一下Nginx中配置HTTP2协议的方法,感兴趣的可以了解一下
    2024-10-10
  • Nginx中break与last的区别详析

    Nginx中break与last的区别详析

    这篇文章主要给大家介绍了关于Nginx中break与last区别的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Nginx中FastCGI如何配置优化

    Nginx中FastCGI如何配置优化

    这篇文章主要介绍了Nginx中FastCGI如何配置优化,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 教你nginx跳转配置的四种方式

    教你nginx跳转配置的四种方式

    现如今随着应用服务的增多,服务可能部署在不同的服务器上,下面这篇文章主要给大家介绍了关于nginx跳转配置的四种方式,需要的朋友可以参考下
    2022-07-07
  • nginx请求限制配置方法

    nginx请求限制配置方法

    这篇文章给大家介绍nginx请求限制配置方法,包括http协议的连接和请求,nginx配置语法,本文给大家介绍的非常详细,需要的朋友参考下吧
    2021-07-07
  • nginx多域名转发的实现

    nginx多域名转发的实现

    本文主要介绍了nginx多域名转发的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03

最新评论