当前位置: 首页 > news >正文

部署前端项目

常见部署方式有:静态托管服务、服务器部署

1. 静态托管服务

使用平台部署代码,比如 GitHub。

| 创建一个仓库,仓库名一般是 yourGithubName.github.io。

| 将打包后的静态文件文件上传到仓库。

| 在“Settings”(选项)选项卡中,找到“Pages”(页面)部分。

| 选择要部署的分支(通常是 main 分支)。

| 点击“Save”(保存)。

| GitHub 完成部署后,会在“Pages”部分显示部署成功的链接,您可以通过该链接访问您的静态网站。

 

2. 服务器部署

购买服务器,选择 Linux 服务器,操作系统选择 CentOS,安装 Nginx,配置服务器指向项目的静态文件目录。将前端打包文件上传到指定目录。配置 Nginx。Nginx 的配置文件通常位于 /etc/nginx/sites-available/ 目录下。创建一个新的配置文件,例如 your_domain.conf。配置如下:

server {listen 80;  # 监听 80 端口,您也可以根据需求修改为其他端口server_name your_domain.com;  # 替换为您的域名root /path/to/your/frontend/files;  # 替换为前端项目文件的实际路径location / {try_files $uri $uri/ /index.html;  # 确保任何请求都能正确加载到 index.html}}

启用配置:创建一个符号链接将配置文件从 sites-available 目录链接到 sites-enabled 目录:

sudo ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/

检查配置:使用以下命令检查配置是否正确:

sudo nginx -t

重新加载 Nginx 使配置生效:

sudo systemctl reload nginx

例如,如果您的前端项目文件位于 /var/www/your_project ,域名是 example.com ,配置文件可能如下:

server {listen 80;server_name example.com;root /var/www/your_project;location / {try_files $uri $uri/ /index.html;}}

在 Nginx 中部署两个前端项目。打开 Nginx 的配置文件,通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/default。添加两个 server 块来分别配置两个项目。

server {listen 8080;  # 第一个项目监听 8080 端口server_name project1.example.com;  # 项目 1 的域名root /path/to/project1;  # 项目 1 的根目录index index.html;  # 项目 1 的默认索引文件location / {try_files $uri $uri/ /index.html;}}server {listen 8081;  # 第二个项目监听 8081 端口server_name project2.example.com;  # 项目 2 的域名root /path/to/project2;  # 项目 2 的根目录index index.html;  # 项目 2 的默认索引文件location / {try_files $uri $uri/ /index.html;}}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 高效前端开发:解密pnpm的存储与链接
  • 第5章-组合序列类型
  • 二叉树的顺序存储
  • linux 进程堆栈分析
  • 精通C#编程需要学习哪些常用框架?
  • [安洵杯 2019]easy_serialize_php
  • 小型简易GIT服务器搭建和使用
  • 基于Memcached实现对象缓存:存储对象数据,如购物车内容,用户配置
  • 深入理解Spring Boot中的数据库优化
  • 音视频封装demo:将h264数据和aac数据封装(mux)成TS文件(纯手工,不依赖第三方开源库)
  • DDD架构
  • 快速将一个网址打包成一个exe可执行文件
  • 大数据基础:Hadoop之HDFS重点架构原理
  • CentOS 8升级gcc版本
  • redis的Bitmap 、HyperLogLog、Geo相关命令和相关场景
  • 07.Android之多媒体问题
  • Laravel Telescope:优雅的应用调试工具
  • Map集合、散列表、红黑树介绍
  • Redis的resp协议
  • SegmentFault 2015 Top Rank
  • SpringCloud集成分布式事务LCN (一)
  • vuex 学习笔记 01
  • 高性能JavaScript阅读简记(三)
  • 技术胖1-4季视频复习— (看视频笔记)
  • 精彩代码 vue.js
  • 利用jquery编写加法运算验证码
  • 区块链技术特点之去中心化特性
  • 使用Gradle第一次构建Java程序
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 职业生涯 一个六年开发经验的女程序员的心声。
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • gunicorn工作原理
  • 进程与线程(三)——进程/线程间通信
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • #DBA杂记1
  • #define
  • #pragma pack(1)
  • #QT项目实战(天气预报)
  • (04)odoo视图操作
  • (4)事件处理——(7)简单事件(Simple events)
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (70min)字节暑假实习二面(已挂)
  • (done) ROC曲线 和 AUC值 分别是什么?
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (学习日记)2024.01.09
  • (一)Thymeleaf用法——Thymeleaf简介
  • ****Linux下Mysql的安装和配置
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .Net的C#语言取月份数值对应的MonthName值
  • .NET分布式缓存Memcached从入门到实战
  • .net开发引用程序集提示没有强名称的解决办法