前端_react项目从windows部署到centos
off999 2025-01-13 16:49 11 浏览 0 评论
前言:
从工程角度来讲,本地开发完就要把项目部署到生产环境,此过程的快慢也直接影响着整体的效率。所以也有很多人做持续集成的工作,例如:CI/CD/一键部署。
但对于个人开发者而言,如果能有工具支撑是最好的,如果没有的话,那只能自己动手丰衣足食了。
第一、打包react项目。
- 在本机项目文件夹执行,npm run build。
- 在本机项目文件夹会生成build文件夹。
第二、搭建centos环境。
- web服务器的选择:有的选择tomcat,有的选择nginx
- 决策:tomcat从感觉上来讲主要服务java项目;nginx更多的服务前端项目,其在高并发、缓存配置等要优于tomcat,它也更多的做反向代理之用。
- nginx安装:(centos环境)
- $ sudo yum -y install nginx # 安装 nginx
- $ sudo yum remove nginx # 卸载 nginx
以上是通用命令,自己搭建的虚拟机或者各云厂商的虚拟主机,存在细微的差别。
以Amazon为例:
- sudo yum -y install nginx 会提升“No package nginx available”
- 需单独配置yum源
- 在/etc/yum.repos.d/ 目录下新建一个nginx.repo文件(切换到root用户)
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/x86_64/
gpgcheck=0
enabled=1
- 再yum 安装即可。
第三、nginx常用命令。
- 查看nginx安装路径:whereis nginx
- yum安装后默认的配置路径:/etc/nginx/
- nginx配置测试:nginx -t -c /etc/nginx/nginx.conf
- 启动:systemctl start nginx
- 验证:netstat -ltunp ,验证nginx进程是否监听了80端口。
- 优雅关闭:nginx -s quit //待nginx进程处理任务完毕进行停止。
- 强制关闭:nginx -s stop //先查出nginx进程id再使用kill命令强制杀掉进程。
- 重新加载:nginx -s reload //配置文件nginx.conf修改后,使配置生效要重启 nginx
第四、react项目配置nginx启动。
- 在服务端建立文件夹,例如:/home/user/react
- 把步骤1打包的build文件放入其下
- nginx增加项目配置:
- 在/etc/nginx目录下建立vhost: mkdir vhost 【统一管理自己的配置文件】
- 然后进入vhost新建配置文件,例如:react.conf
server {
server_name localhost;
//build文件夹下的内容
root /home/user/react;
location / {
try_files $uri @fallback;
}
location @fallback {
rewrite .* /index.html break;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
- 在nginx.conf文件配置以上自定义的配置
- 至此nginx配置基本完毕,按照nginx管理方式启动即可。
备注:如果通过ip访问,则把vhost下自定义的server_name改成ip即可。
当然,前后端分离的情况下,动态数据要访问服务器,可能要涉及到前端路由的配置,等遇到的情况,再记录下来与大家共勉。
相关推荐
- 30s带你使用Python打包exe文件,并修改其图标
-
在Python中,我们可以使用PyInstaller或cx_Freeze等工具将Python脚本打包成可执行文件(.exe),并且能够修改生成的.exe文件的图标。使用PyInstaller...
- Python一键打包为windows的exe文件,无需安装python环境即可执行
-
一、为什么要将Python打包为exe?在实际应用中,我们希望Python程序能在没有安装Python环境的电脑上直接运行。将Python代码打包为exe可执行文件,不仅能解决环境依赖问题,还便于程...
- py2exe实现python文件打包为.exe可执行程序(上篇)
-
今天分享的内容为:python程序实现发送、读取邮件来控制电脑的关机与重启(作为py2exe打包成.exe可执行程序的基础文件)一、说明:本文介绍的是使用新浪邮箱作为例子进行讲解,代码实现如下:#c...
- 如何将python程序文件打包生成一个可执行文件(exe文件)
-
在开发Python程序后,有时我们希望将其打包成一个可执行的exe文件,方便在没有Python环境的计算机上运行。下面将详细介绍使用常见工具实现这一目标的方法。安装PyInstaller...
- Python程序打包为EXE的全面指南:从入门到精通
-
引言在Python开发中,将程序打包成可执行文件(EXE)是分发应用程序的重要环节。通过打包,我们可以创建独立的可执行文件,让没有安装Python环境的用户也能运行我们的程序。本篇文章将详细介绍如何使...
- 10个你没有充分利用的令人惊叹的 Python 特性
-
Python的简单性和多功能性使其成为全球开发人员的最爱。每天有超过1000万开发者使用Python进行从网络开发、机器学习到网络脚本等各种开发,Python的功能非常强大。然而,我们中的...
- 编程语言可以用来做什么
-
1.web前端你每天浏览的网页,所看到的页面特效,均是由web前端工程师来实现的2.Java大型购物网站有关通信及网络企业大型企业级应用管理系统大型网游后台数据3.C++嵌入式三维游戏领域人工智能领域...
- 用Python进行机器学习(16)-内容总结
-
对于用Python进行机器学习的内容,到这里就要做一个阶段性总结啦,后续再写的文章就是关于深度学习的了,算是对该部分内容的进阶版。对于机器学习,我们主要介绍了五个方面的内容:第一个就是分类算法,主要包...
- 普通人如何利用python做自媒体赚收益
-
普通人利用Python做自媒体赚收益,最简单的方式是下载某些网站的视频,并利用剪影编辑视频,最后导出发布,每天可以制作个10几条,并设置好定时发布,每天如此坚持下去,一定会有所收获的...
- AI能写什么做什么?这些技能已经颠覆你的认知!
-
在ChatGPT、文心一言等AI工具爆火的今天,人工智能早已不再是科幻电影里的概念,而是实实在在地渗透进我们的生活。**AI到底能写什么?能做什么?它的边界在哪里?**让我们一探究竟!---**1....
- Python 3.14 新特性盘点,更新了些什么?
-
Python3.14.0稳定版将于2025年10月正式发布,目前已进入beta测试阶段。这意味着在往后的几个月里,3.14的新功能已冻结,不再合入新功能(除了修复问题和完善文档)。3...
- 每天一个Python库:sys模块的5个高频用法(建议收藏)
-
很多人学Python,一直卡在“写不了实用脚本”。其实,会用标准库,效率直接翻倍。今天分享的是:sys模块。这个模块虽然基础,但非常实用,下面是我亲测常用的5个功能1.获取命令行参数(自动化脚...
- Python除了做爬虫抓数据还能做什么?其实还能监视和衡量网站性能
-
借助这份对初学者友好的指南,您可以构建自己的自定义Python脚本来自动测量网站的关键速度和性能指标。 在过去的一个月中,Google宣布了许多通过关键速度和性能指标来衡量用户体验的方法。 巧...
- python究竟可以用来做些什么
-
这里就不撰述python的一些像什么“高级语言”之类的比较常规的介绍了,还是老样子,说说一些比较常用的东西吧。python是什么python,一款可编程的开源软件,很多第三方库、框架也是开源的,比如强...
- Python 实现 dubbo 协议接口自动化测试
-
前言python语言也可以实现对dubbo协议的接口进行调用与测试,可以使用python+hessian结合的方式,也可以使用python+telnet结合的方式模拟命令行的模式来实现对...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- python计时 (54)
- python安装路径 (54)
- python类型转换 (75)
- python进度条 (54)
- python的for循环 (56)
- python串口编程 (60)
- python写入txt (51)
- python读取文件夹下所有文件 (59)
- java调用python脚本 (56)
- python操作mysql数据库 (66)
- python字典增加键值对 (53)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python qt (52)
- python人脸识别 (54)
- python斐波那契数列 (51)
- python多态 (60)
- python命令行参数 (53)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- centos7安装python (53)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)