部署 Vue 前端项目到 Linux

看看怎么把一个 Vue 3 项目部署到 Linux 服务器上。准备好你的咖啡,让我们愉快地度过这段部署时光!

前期准备

确保你已经在本地构建了 Vue 3 项目,并生成了 dist 文件夹。

bash 复制代码
npm run build

构建完成后,你将看到一个新鲜出炉的 dist 文件夹,里面包含所有静态资源。

传输文件到服务器

接下来,我们需要将这些文件传输到你的 Linux 服务器上。你可以使用 SCP,rsync,或者你喜欢的任何工具。这里我们假设你使用 SCP:

bash 复制代码
scp -r dist username@your_server_ip:/path/to/destination/

把 username 换成你的服务器用户名,your_server_ip 换成你的服务器IP,/path/to/destination/ 换成你想要放置文件的位置,比如 /var/www/。

小小友情提醒

别忘了确认你有权限访问和写入目标目录!权限问题可是能把人折腾到抓狂的。

配置 NGINX

文件传上去了,现在我们来搞定 NGINX 配置。打开或创建 NGINX 配置文件,通常在 /etc/nginx/nginx.conf 或 /etc/nginx/conf.d/default.conf:

bash 复制代码
 sudo vim /etc/nginx/nginx.conf

在配置文件中添加以下内容,将 your_server_ip_or_domain 和 /path/to/destination/dist 替换成你自己的信息:

nginx 复制代码
server {
    listen 80;
    server_name your_server_ip_or_domain;

    location / {
        root /path/to/destination/dist;
        index index.html;
        try_files $uri $uri/ /index.html;
    }

    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
}

替换示例:

  • your_server_ip_or_domain 其实就是你服务器的IP地址或域名。
  • /path/to/destination/dist 是你刚才放置 dist 文件夹的路径。

重启 NGINX 服务

配置文件改好了?好嘞!咱们需要让NGINX重新加载这些新配置:

bash 复制代码
sudo nginx -t  # 检查一下配置文件有没有写错别字之类的小毛病
sudo systemctl restart nginx  # 重启NGINX,让新配置生效

开放防火墙端口

你可不希望你的项目只能自己瞧瞧吧?让我们打开80端口,让世界都能访问:

bash 复制代码
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload

完美解决

如果你没有写错任何一步,打开浏览器,输入你的服务器IP或域名,哒哒哒,你的 Vue 3 项目现在应该愉快地跑在服务器上了!

总结

通过这些步骤,你成功将一个 Vue 3 项目部署到了 Linux 服务器上,并配置了 NGINX------这可是极具成就感的一项成就!快去享受你的成果,向世界展示你的作品吧!

Happy deploying! 🚀

相关推荐
用户960819842236 分钟前
多周期联看时十字光标对不齐:前端排查「时间桶」的三步清单
前端
墨鱼老师7 分钟前
SpringBoot+Vue 毕设项目开发踩坑记录(前后端分离)
vue.js·spring boot·毕业设计·课程设计·前后端分离·java 毕设
0+11126 分钟前
Linux --应用层自定义协议与序列化
linux·运维·服务器·网络·tcp
dyxal30 分钟前
Linux Crontab 防重复执行利器:flock 文件锁实战详解(脱敏版)
linux·运维·服务器
Data analyse45631 分钟前
数据合规的敏感数据怎么识别?
前端·人工智能·数据分析
niuTaylor31 分钟前
RK3568 Linux SDK 详解:SDK 是什么、板级差异与完整构建流程
linux·运维·服务器
雪芽蓝域zzs32 分钟前
Vue3 + Element Plus el-select 下拉弹窗
vue.js·elementui
陪我一起学编程34 分钟前
vue3笔记
前端·webpack·vue3·vite·脚手架·vue3笔记·组件式
拾贰_C40 分钟前
【Ubuntu | port】Linux进程端口号冲突问题解决
linux·运维·ubuntu
Wx-bishekaifayuan1 小时前
springboot房屋租赁系统11574-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·sql·spring·课程设计