部署 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! 🚀

相关推荐
2401_8582861123 分钟前
OS79.【Linux】POSIX信号量
linux·运维·服务器
laboratory agent开发26 分钟前
企业AI Agent落地前,先回答四个工程问题
java·前端·人工智能
微三云 - 廖会灵 (私域系统开发)26 分钟前
电商系统国际化架构设计:多语言、多币种、多时区、多税制的全链路实现
java·前端·数据库
CodingPioneer1 小时前
03零刻Pro-LS2K3000-Loongnix 20.7.rc1硬盘分区、格式化、挂载与卸载
linux·运维·服务器·硬盘挂载
不简说1 小时前
JS 代码技巧 vol.5 — 10 个错误处理套路,从 try/catch 到 Error Boundary
前端·javascript·程序员
wordpress资料库1 小时前
Next.js更适合移动开发 不适合web开发
开发语言·前端·javascript·next.js
ShineWinsu1 小时前
对于Linux:TCPsocket编程基础的解析
linux·网络协议·tcp/ip·面试·笔试·进程·远程指令
卷无止境1 小时前
Quarkdown:赋予 Markdown 超能力的现代排版系统
前端·markdown
dddwjzx1 小时前
嵌入式Linux C应用编程——tslib库的使用
linux·嵌入式
Huangjin007_1 小时前
【Linux 系统篇(三)】入门基础指令详解(三)
linux·服务器