当前位置:首页 > VUE

ssh vue 实现

2026-03-27 09:39:13VUE

SSH 连接 Vue 项目部署的服务器

通过 SSH 连接部署 Vue 项目的服务器,通常需要完成以下步骤:

生成 SSH 密钥对 在本地计算机上生成 SSH 密钥对,使用以下命令:

ssh-keygen -t rsa -b 4096

生成的密钥默认存储在 ~/.ssh 目录下,包含 id_rsa(私钥)和 id_rsa.pub(公钥)。

将公钥添加到服务器 将本地生成的公钥内容复制到服务器的 ~/.ssh/authorized_keys 文件中:

ssh-copy-id user@server_ip

如果 ssh-copy-id 不可用,可以手动将公钥内容追加到服务器的 authorized_keys 文件中。

配置 SSH 连接 在本地 ~/.ssh/config 文件中添加服务器配置,简化连接命令:

Host vue_server
    HostName server_ip
    User username
    Port 22
    IdentityFile ~/.ssh/id_rsa

保存后可通过 ssh vue_server 快速连接。

Vue 项目部署到服务器

安装 Node.js 和 npm 确保服务器已安装 Node.js 和 npm,可通过以下命令安装:

curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs

克隆 Vue 项目 使用 Git 克隆项目到服务器:

git clone https://github.com/your-vue-project.git
cd your-vue-project

安装依赖并构建 在项目目录中安装依赖并构建生产环境代码:

npm install
npm run build

配置 Web 服务器 将构建生成的 dist 目录内容部署到 Web 服务器(如 Nginx):

sudo apt-get install nginx
sudo cp -r dist/* /var/www/html/

配置 Nginx 以服务 Vue 项目:

sudo nano /etc/nginx/sites-available/default

确保配置中包含:

server {
    listen 80;
    server_name your_domain.com;
    root /var/www/html;
    index index.html;
    location / {
        try_files $uri $uri/ /index.html;
    }
}

重启 Nginx 使配置生效:

sudo systemctl restart nginx

自动化部署脚本

编写部署脚本 创建 deploy.sh 脚本自动化部署流程:

#!/bin/bash
echo "Pulling latest changes from Git..."
git pull
echo "Installing dependencies..."
npm install
echo "Building Vue project..."
npm run build
echo "Copying files to web directory..."
sudo cp -r dist/* /var/www/html/
echo "Deployment complete!"

赋予脚本执行权限:

chmod +x deploy.sh

通过 SSH 远程执行部署 从本地计算机通过 SSH 远程执行服务器上的部署脚本:

ssh vue_server 'cd /path/to/your-vue-project && ./deploy.sh'

安全加固 SSH 连接

修改默认 SSH 端口 编辑服务器的 /etc/ssh/sshd_config 文件,修改 Port 为其他端口(如 2222):

Port 2222

重启 SSH 服务:

sudo systemctl restart sshd

禁用密码认证sshd_config 中设置:

PasswordAuthentication no
ChallengeResponseAuthentication no

仅允许密钥认证提高安全性。

配置防火墙 使用 UFW 防火墙限制 SSH 访问:

ssh vue 实现

sudo ufw allow 2222/tcp
sudo ufw enable

通过以上步骤,可以实现安全的 SSH 连接并高效部署 Vue 项目到远程服务器。

标签: sshvue
分享给朋友:

相关文章

vue实现mvc

vue实现mvc

Vue 实现 MVC 模式 Vue 本身是一个 MVVM(Model-View-ViewModel)框架,但可以通过结构调整实现 MVC(Model-View-Controller)模式。以下是具体实…

vue插槽实现

vue插槽实现

插槽的基本概念 Vue插槽(Slot)是一种内容分发机制,允许父组件向子组件传递模板片段,子组件通过<slot>标签定义接收位置。插槽的核心作用是增强组件的灵活性和复用性。 默认插槽 子…

vue实现vnc

vue实现vnc

Vue 实现 VNC 客户端 在 Vue 项目中实现 VNC 客户端功能,可以通过集成现有的 VNC 客户端库或组件完成。以下是具体实现方法: 安装依赖库 使用 noVNC 或其他 VNC 客户端…

vue实现注销

vue实现注销

实现用户注销功能 在Vue应用中实现用户注销功能通常涉及清除用户会话、重置应用状态并跳转到登录页面。以下是具体实现方法: 清除用户认证信息 使用Vuex或Pinia管理用户状态时,需在注销时重置存储…

vue filter 实现

vue filter 实现

在 Vue.js 中,过滤器(Filter)是一种用于文本格式化的功能,可以在模板中直接使用。以下是实现过滤器的详细方法: 全局过滤器注册 通过 Vue.filter 方法注册全局过滤器,可在所有组…

vue实现树形

vue实现树形

Vue 实现树形组件 在 Vue 中实现树形结构通常需要递归组件和动态数据绑定。以下是实现树形组件的几种常见方法。 递归组件实现 递归组件是 Vue 中实现树形结构的核心方法。通过组件调用自身,可以…