引言
在当前的前后端分离架构中,Vue项目作为前端框架被广泛使用,而Nginx则作为反向代理服务器,负责处理静态资源请求和转发动态请求。本文将深入探讨Vue项目与Nginx的完美转发之道,包括跨域配置、动静分离以及性能优化等方面。
环境准备
1. Jenkins搭建
首先,我们需要搭建一个Jenkins环境。可以参考之前的文章《Jenkins孟林洁的博客-CSDN博客》进行搭建。
2. NVM和Nodejs安装
接下来,安装NVM和Nodejs。首先,从GitHub下载最新的nvm:
# 下载nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
# 验证nvm
nvm version
# 安装nodejs
nvm install 20.10.0
# 使用nodejs
nvm use 20.10.0
# 验证node和npm
node -v
npm -v
3. Nginx安装
最后,下载并解压缩Nginx:
# 下载Nginx
wget http://nginx.org/download/nginx-1.21.6.tar.gz
# 解压缩
tar -zxvf nginx-1.21.6.tar.gz
Jenkins配置
2.1 相关插件安装
在Jenkins中,我们需要安装以下插件:
- NodeJS
- Git Parameter
2.2 全局工具安装
在Jenkins中配置Nodejs全局工具:
- 在Jenkins的“管理Jenkins”页面中,选择“全局工具配置”。
- 在“NodeJS”下,点击“添加NodeJS”。
- 输入Nodejs的路径,例如
/usr/local/bin/node
。
2.3 环境变量配置
配置环境变量,以便在构建过程中使用:
# 配置环境变量
export NODE_ENV=production
export APIHOST='/api/'
2.4 邮箱配置(构建后发送邮件)
在Jenkins的“系统管理”页面中,配置邮件通知。
2.5 任务配置
创建一个Jenkins任务,配置以下参数:
- Git仓库地址
- 构建环境(如Linux)
- 构建工具(如Nodejs)
- 构建命令(如
npm install && npm run build
)
Nginx配置
3.1 配置路由转发
编辑Nginx配置文件(通常是nginx.conf
或单独的站点配置文件),添加以下配置:
server {
listen 80;
server_name your-domain.com;
location / {
root /path/to/your/vue/app;
tryfiles $uri $uri/ /index.html;
}
location /api/ {
proxy_pass http://backend-server-url;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
部署项目
4.1 构建项目
在Jenkins任务中,执行以下命令:
# 清理构建目录
rm -rf dist
# 构建项目
npm install && npm run build
4.2 启动Nginx
# 启动Nginx
nginx
4.3 访问项目
总结
通过以上配置,我们可以轻松实现Vue项目与Nginx的完美转发,包括跨域配置、动静分离以及性能优化等方面。在实际应用中,可以根据具体需求调整Nginx配置,以达到最佳性能。