本地Nginx部署React前端项目浅尝

news2024/11/19 14:44:31

目录

  • nginx [下载](http://nginx.org/en/download.html)
  • nginx命令
  • react打包文件放置
    • nginx 配置
  • 运行效果
  • nginx踩坑
    • 根目录配置

nginx 下载

在这里插入图片描述
根据上面的版本找到适合自己的 nginx版本,我目前是环境是 windows,所以下载 稳定版本

nginx命令

在下载的nginx目录下打开以管理员身份打开命令控制面板。

# nginx启动
nginx.exe

# nginx关闭
nginx.exe -s stop

# nginx重启
nginx.exe -s reload

注意:特别说明的是nginx启动后不能再里面运行其他命令,需要新开一个命令窗口输入。

示例:

  • 项目启动
    在这里插入图片描述

  • 项目重启
    在这里插入图片描述

  • 项目停止
    在这里插入图片描述

react打包文件放置

Vue 或者 React 打包后的 dist (根据自己的需求) 文件拷贝到 nginx -> html 目录下。

nginx 配置

  • 打开 nginx 根目录下的 conf -> nginx.conf 文件(打开方式不限)
  • 具体配置
server {
	# 配置端口号
    listen       8888;
    
    # 配置服务名称
    server_name  localhost;

	# 配置路由
    location / {
        # 配置根目录
        root   D:/My_TEST/nginx-1.24.0/html/dist;
        
        # 配置访问入口文件
        index  index.html index.htm;
        
        # 配置Vue或者React路由,如果不配置,不能匹配到前端项目中的路由,可能会报404
        try_files $uri $uri/ /index.html;
        
        # 如果想要在端口号后面配置前缀名称, 例:pc, 访问路径为:www.xxxx.com/pc/aaa(aaa为前端路由)
        try_files $uri $uri/ /pc/index.html;
    }
    
    # 调用了多少个后台地址,就配置多少
    location ^~ /api/ {
  		proxy_pass   '接口请求后端地址';
    }

}

运行效果

在这里插入图片描述

nginx踩坑

根目录配置

因为 nginx 的默认就是指向 html 目录下的 index.html, 自以为直接将dist打包文件放在其下,再把 / 改成 html/dist 就可以了,实际上是我想当然了。
在这里插入图片描述

如果是将 root 配置直接给改成 html/dist,那么你一定会遇到下面这个问题。

在这里插入图片描述

看这个提示就很明显,找不到文件的嘛,那怎么办呢?

直接将这个 html/dist 改成该项目所在的绝对路径就好了, 例如:D:/My_TEST/nginx-1.24.0/html/dist (此处可以根据你自己的需求来)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756076.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数学建模-判断数据是否服从正态分布

大样本用qq图 >1000 皮尔逊相关系数需要正态性检验,利用上面三种方法其中一种 斯皮尔曼相关系数不用正态性检验

Claude2轻松解决代码Bug的实战方案

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

GPT-4最新细节曝光:从架构、基础设施、训练数据集、成本、视觉到MoE

OpenAI保持GPT-4架构封闭,不是因为对人类的某种存在风险,而是因为他们所构建的内容是可复制的。实际上,我们预计Google、Meta、Anthropic、Inflection、Character、Tencent、ByteDance、Baidu等公司在短期内将拥有与GPT-4一样甚至更强大的模型…

T100简易的查询作业功能开发

一、自定义作业维护 首先打开作业【azzi310】,进行作业的新增。 这是一个空白的作业界面,我们需要填写的地方也就那么几个。 查询单id:注册一个查询单 【四个字母三个数字】比如这里我们cxmq101.查询单名称:给这个查询起一个名字最大查询笔数:可以自己定义报表是否自己录…

数据库,数据仓库,数据湖

数据仓库四层分层 ODS——原始数据层:存放原始数据 ODS层即操作数据存储,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的ETL之后,装入本层;一般来说ODS层的数…

JavaScript初识

ECMAScript和JavaScript到底是什么关系? 简单来说,ECMAScript是JavaScript语言的国际标准,JavaScript是ECMAScript的实现。 一、第一个程序:hello word 二、JavaScript的几种常见写法: 1、将JavaScript写在标签上 2、…

应用上下文能否获取-spring13

我们能否通过web层通过spring容器去获得serive,然后serive内部Dao再去注入 这句话的意思是去加载xml配置文件,去加载spring容器,每次都要创建,太麻烦了,影响性能 最好的方法:应用上下文或者spring容器创建一…

DCL与延迟初始化(单例)

前言 在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。 第一种(存在问题) public class UnsafeLazyInitialization {private static Instance instance;public static Instance getInstance() {if (instance …

零基础如何自学成为网络安全工程师

前言 一份网络攻防渗透测试的学习路线,不藏私了! 👉 【一帮助安全学习一】👈这里自取256G网络安全自学资料 1、学习编程语言(phpmysqljshtml) 原因: phpmysql可以帮助你快速的理解B/S架构是怎样运行的&#xff0c…

【AI底层逻辑】——篇章5(上):机器学习算法之回归分类

目录 引入 一、何为机器学习 1、定规则和学规则 2、算法的定义 二、机器学习算法 1、常见学习方法 2、回归 3、分类 续下篇... 往期精彩: 引入 计算机发明初,专家通过将专业知识和经验梳理成规则输入计算机程序,但是这样跟不上知识…

IT技术培训班:搭乘学习快车的抉择

引言: 在IT技术学习的道路上,我们常常会被推荐各种五花八门的技术培训班。它们通过各种宣传手段向我们展示着美好的未来和无限的机会。然而,我们又应该如何看待这些培训班呢?在培训班里学技术真的有用吗?本文将从不同角…

【Java进阶之路】HashMap源码分析(JDK1.8)

概述 JDK 1.8 对 HashMap 进行了比较大的优化,底层实现由之前的 “数组链表” 改为 “数组链表红黑树”,本文就 HashMap 的几个常用的重要方法和 JDK 1.8 之前的死循环问题展开学习讨论。 JDK 1.8 的 HashMap 的数据结构如下图所示,当链表节…

Docker 替代方案:适用于 SaaS 应用程序的 10 种 Docker 替代方案

Docker技术已经在基础设施管理领域引起了革命性的变化,以至于Docker现在已经成为容器的代名词。重要的是要理解,所有的Docker都是容器,但并非所有的容器都是Docker。虽然Docker是最常用的容器技术,但还有其他几种替代Docker的选择…

积分兑换小程序项目总结

1. 项目概述 背景:中标项目,第三方公司做会员福利,以积分的形式发放。目标:给固定的钱,积分兑完,周期两个月。需求:固定会员能及时线上兑换积分。解决方案:开发微信小程序在线兑换。…

Nexpose v6.6.203 for Linux Windows - 漏洞扫描

Nexpose v6.6.203 for Linux & Windows - 漏洞扫描 Rapid7 Vulnerability Management, Release Jul 05, 2023 请访问原文链接:https://sysin.org/blog/nexpose-6/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.o…

【吴恩达】prompt engineering(原则 迭代 文本概括 推断、订餐机器人)

简介 Introduction 基础的LLM训练的模型,问法国的首都什么,可能会将答案预测为“法国最大的城市是什么,法国的人口是多少”许多 LLMs 的研究和实践的动力正在指令调整的 LLMs 上。指令调整的 LLMs 已经被训练来遵循指令。因此,如…

(EMQX)STM32L+BC20+MQTT协议传输温湿度,ADC,电压,GPS数据到EMQX

1、材料准备 准备以下材料 2、设备连接 2.1 插入物联网卡,天线 首先把BC20核心板从开发板上拆下来 然后将物联卡放置在BC20核心板内 物联卡放置完成将BC20核心板重新插入到开发板内(注意不要弄错方向) 同时接入天线 2.2 连接ST-Link仿真…

Android VNDK/VSDK Snapshot编译框架

1.背景 背景一: 为解决Android版本碎片化问题,引入Treble架构,它提供了稳定的新SoC供应商接口,引入HAL 接口定义语言(HIDL/Stable AIDL,技术栈依然是Binder),它指定了 vendor HAL 和system fram…

使用GPU进行大规模并行仿真,解决强化学习采样瓶颈:CPU、GPU架构以及原理详解

强化学习的落地应用场景,我认为可以是仿真环境仿真程度高,且仿真速度快的任务场景。而这篇帖子将会将:使用 GPU 进行大规模并行仿真,解决强化学习采样瓶颈。并直接举出三个例子,展示如何对原有的仿真环境进行修改,让它们适应 GPU 并行加速。 1.强化学习论文背后的仿真环…

用 GPU 并行环境 Isaac Gym + 强化学习库 ElegantRL:训练机器人Ant,3小时6000分,最高12000分

前排提醒,目前我们能 “用 ppo 四分钟训练 ant 到 6000 分”,比本文的 3 小时快了很多很多,有空会更新代码 https://blog.csdn.net/sinat_39620217/article/details/131724602 介绍了 Isaac Gym 库 如何使用 GPU 做大规模并行仿真,对环境模块提速。这篇帖子,我们使用 1 …