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

相关推荐
lsh曙光2 小时前
延时at指令和定时cron指令
linux·服务器·网络
圆山猫2 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
似的8353 小时前
一步一步学习使用FireMonkey动画() 使用TAnimator类创建动画
linux·学习·nginx
郭老二3 小时前
【前端】vue3:编译步骤
前端
不在逃避q4 小时前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
夏殇之殁4 小时前
包中创建自定义列表项。 . 使用自定义列表项进行数据绑定 . 将天气预报数据保存到本地内存表,通过LiveBindings进行显示。 ...
服务器·前端·javascript
The Chosen One9854 小时前
高进度算法模板速记(待完善)
java·前端·算法
陈随易4 小时前
MoonBit抓包模块pcap,查看电脑的每一次联网通信
前端·后端·程序员
我不管我就要叫小猪4 小时前
嵌入式Linux----网络通信
linux·运维·服务器
泡沫冰@5 小时前
ECS 的介绍和使用
linux·服务器·网络