云服务器Ubuntu部署vue项目

本文详细介绍了如何在云服务器上安装和配置Nginx,打包Vue项目,以及将dist文件传输到服务器并创建myweb.conf进行项目配置。步骤包括安装Nginx,启动和验证,打包Vue项目,使用winscp上传文件,以及配置myweb.conf以正确指向前端目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

安装nginx

打包vue项目

本地dist传到云服务器

xshell远程操作云服务器

配置nginx

新建myweb.conf

myweb.conf里配置项目

启动

检验


安装nginx

默认你已经远程连接云服务器,我使用的是xshell7

更新包列表:
sudo apt update
安装 Nginx:
sudo apt install nginx
启动 Nginx 服务:
sudo systemctl start nginx
验证 Nginx 是否已经成功启动:
sudo systemctl status nginx

如果上面的都没有问题,应该看到下面的页面

成功证明最好的就是浏览器输入自己的云服务器弹性公网ip,就会出现nginx的welcom页面

打包vue项目

打包的关键是获得dist包

我使用的是vscode

  1. CTRL + ~ 快捷键打开终端
  2. 终端输入: npm run build 

没有任何报错,看到下面你就成功

在左边目录你将会看到dist包

本地dist传到云服务器

推荐使用winscp,直接拖过去

winscp连接云服务器上传本地文件-优快云博客

dist可以放在任何自定义目录,比如:

自定义一个目录,dist存在proname_front目录下
后面以这个路径为例
cd /
mkdir projects
cd projects
mkdir proname_front

xshell远程操作云服务器

xshell7连接云服务器操作-优快云博客

配置nginx

如果你是第一次,完全可以用完的命令,后面你懂了再自定义

我的目标是配置上面的那个vue项目

新建myweb.conf

进入配置目录
cd  /etc/nginx/sites-enabled
新建一个myweb.conf配置文件
sudo touch myweb.conf

myweb.conf里配置项目

打开文件
vim myweb.conf
启用编辑模式(就是按一个建:i)
i
复制下面的server代码块,根据自己的需要修改
server {
   listen 80; # 设置服务器监听的端口号为80,默认端口,其他端口就要加上default_server
   root /projects/proname_front/dist; # 设置服务器的根目录为指定路径下的前端文件存放地址
   index index.html;  # 设置默认索引文件为index.html
   server_name your_ip;  # 设置服务器的域名或IP地址,用于匹配请求的主机头部
   location / {
       # 当请求的 URI 匹配当前位置(即根目录)时,如果找不到则重定向到index.html
       try_files $uri $uri/ /index.html;
   }
}

保存退出
按ESC,然后:wq

启动

检查有没有配置语法错误
sudo nginx -t 
重启nginx,激活新配置
sudo systemctl reload nginx

检验

浏览器再次输入配置文件里的ip,就会出现你的vue项目初始页

### 使用 Nginx 部署 Vue.js 应用 要在云服务器上通过 Nginx 部署 Vue.js 应用,可以按照以下方法操作: #### 安装 Nginx 在基于 Ubuntu 的系统中,可以通过更新包管理器并安装 Nginx 来完成初始设置。运行以下命令以确保系统的软件包是最新的,并安装 Nginx[^2]。 ```bash sudo apt update sudo apt install nginx ``` #### 测试 Nginx 配置 为了验证 Nginx 是否正常工作以及其配置文件是否存在语法错误,可执行如下命令进行测试[^1]: ```bash /usr/local/nginx/sbin/nginx -t ``` 如果一切无误,则会显示 `syntax is ok` 和 `test is successful` 提示信息。 #### 构建 Vue.js 项目 构建 Vue.js 项目的静态资源前,需确认已成功编译项目。通常情况下,Vue CLI 已经提供了生产环境下的打包脚本。进入项目目录后运行以下命令生成静态文件: ```bash npm run build ``` 这一步会在项目根目录下创建一个名为 `dist` 的文件夹,其中包含了所有的前端静态资源。 #### 修改 Nginx 配置文件 接下来需要调整 Nginx 的配置以便能够正确加载 Vue.js 应用程序中的单页应用 (SPA) 路由模式。打开默认的站点配置文件或新建一个 server block 文件[^4]: 对于大多数 Linux 发行版,默认路径可能是 `/etc/nginx/sites-available/default` 或者 `/etc/nginx/nginx.conf` 中的部分区域。编辑该文件并将内容替换为适合 SPA 的形式,例如下面的例子: ```nginx server { listen 80; server_name your-domain.com; root /path/to/vueapp/dist; # 替换为实际 vue app 编译后的 dist 目录位置 [^5] index index.html; location / { try_files $uri /index.html; # 解决 Vue Router 导致的 404 错误问题 [^3] } error_page 500 502 503 504 /50x.html; } ``` 注意这里的 `try_files $uri /index.html` 是非常重要的部分,它告诉 Nginx 当请求未匹配到具体文件时返回 `index.html` 页面,从而支持 Vue Router 的 history 模式而不会触发 404 错误[^3]。 保存更改之后重新载入 Nginx 配置使其生效: ```bash sudo systemctl reload nginx ``` 此时应该可以在浏览器里访问指定域名或者 IP 地址查看部署好的 Vue.js 应用了。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值