怎么上传源码到服务器6?

整个流程可以概括为以下几个核心步骤,下图为您清晰地展示了操作路径:

flowchart TD
    A[开始: 准备源码与服务器] --> B{选择上传方法};
    
    B -- 推荐 --> C[方法一: 使用 Git];
    B -- 简单 --> D[方法二: SFTP/图形工具];
    B -- 快速 --> E[方法三: 命令行 SCP];
    
    subgraph C [Git 流程]
        C1[本地: 推送到远程仓库] --> C2[服务器: 拉取代码];
    end
    subgraph D [SFTP 流程]
        D1[用 FileZilla 等工具<br>拖拽文件] --> D2[连接到服务器目录];
    end
    subgraph E [SCP 流程]
        E1[在本地终端执行命令] --> E2[直接复制到服务器];
    end
    C & D & E --> F[服务器端后续操作];
    
    subgraph F [部署与配置]
        F1[安装依赖<br>[ npm install, pip install]];
        F2[环境配置<br>[ .env 文件]];
        F3[重启服务<br>[ systemctl, pm2]];
    end

我们详细讲解每一步的具体操作。

第一步:准备工作

在上传之前,请确保你已准备好以下内容:

1、本地源代码:确保你的代码在本地是完整的、可运行的,并且已经过测试。

2、服务器信息:你需要知道以下关键信息:

服务器 IP 地址例如123.123.123.123

SSH 端口号通常是22,但有些服务器为了安全会更改它。

用户名例如rootubuntu 等。

密码或 SSH 密钥用于身份验证。

3、服务器环境:确保服务器上已经安装了你代码所需的运行环境,

Web 环境Nginx、Apache

编程语言PHP、Python、Node.js、Java 等

数据库MySQL、PostgreSQL、MongoDB 等

依赖管理工具Composer (PHP)、pip (Python)、npm (Node.js) 等

第二步:选择上传方法并操作

以下是几种最常用的上传方法,请根据你的需求和熟悉程度选择一种。

方法一:使用 Git(推荐用于团队协作和版本管理)

如果你的项目使用 Git 进行版本控制,这是最优雅和高效的方式。

工作流程:你在本地将代码推送到GitHubGitLabGitee 等远程仓库,然后在服务器上从远程仓库拉取代码。

服务器上的操作(通过 SSH 连接服务器后)

1、安装 Git(如果服务器上没有的话):

    # 对于 CentOS/RHEL:
    sudo yum install git
    # 对于 Ubuntu/Debian:
    sudo apt-get install git

2、克隆你的项目

    # 进入你希望存放代码的目录,/var/www/
    cd /var/www/
    # 克隆项目
    git clone https://github.com/你的用户名/你的项目名.git

3、安装项目依赖(根据你的项目类型):

    # Node.js 项目
    npm install
    # Python 项目
    pip install -r requirements.txt
    # PHP 项目
    composer install

优点:版本控制、易于部署和回滚、方便团队协作。

缺点:需要稍微学习 Git 的基本用法。

方法二:使用 SFTP 和图形化工具(适合新手和单个文件上传)

SFTP 是一种安全的文件传输协议,你可以使用图形化工具像操作本地文件夹一样操作服务器上的文件。

常用工具

FileZilla (免费、跨平台)

WinSCP (Windows)

Transmit (macOS)

以 FileZilla 为例的步骤

1、下载并安装 FileZilla

2、打开 FileZilla,在顶部输入连接信息:

主机你的服务器 IP 地址 (例如sftp://123.123.123.123)

用户名你的服务器用户名 (例如root)

密码你的服务器密码

端口SSH 端口 (通常是22)

3、 点击“快速连接”

4、 连接成功后,你会看到两个窗口:

左侧(本地站点)你的本地电脑文件。

右侧(远程站点)服务器上的文件。

5、 在左侧找到你的本地项目文件夹,在右侧进入服务器的目标目录(例如/var/www/html)。

6、 将本地文件或文件夹拖拽 到右侧的服务器窗口中,即可开始上传。

优点:直观、简单,无需记忆命令。

缺点:传输大量小文件时可能较慢,不适合自动化部署。

方法三:使用 SCP 命令(适合习惯命令行的用户)

SCP 是基于 SSH 的命令行文件传输工具,非常高效。

在本地电脑的终端/命令行中操作

1、上传单个文件

    scp -P 22 /本地/路径/文件名.txt 用户名@服务器IP:/远程/路径/

-P 22指定端口,如果端口是默认的 22,可以省略。

例如scp ./app.py root@123.123.123.123:/var/www/

2、上传整个文件夹(使用-r 递归参数):

    scp -r /本地/项目文件夹/ 用户名@服务器IP:/远程/路径/

例如scp -r ./myproject/ root@123.123.123.123:/var/www/

优点:速度快,适合自动化脚本。

缺点:需要记忆命令,不如图形化工具直观。

第三步:服务器上的后续操作

上传代码后,工作还没完全结束:

1、配置环境变量:很多项目需要配置数据库连接等信息,通常在.env 文件中,你需要在服务器上创建这个文件并填入正确的配置。

2、设置文件权限:确保 Web 服务器(如www-data 用户)对文件有读取和执行的权限。

    # 更改项目目录所有者
    chown -R www-data:www-data /var/www/你的项目
    # 设置目录和文件权限
    chmod -R 755 /var/www/你的项目

3、重启 Web 服务:让更改生效。

    # 对于 Nginx
    sudo systemctl restart nginx
    # 对于 Apache
    sudo systemctl restart apache2

4、启动应用:如果你的项目是 Node.js、Python 等应用,可能需要使用进程管理器(如pm2)来保持其运行。

    pm2 start app.js

新手FileZilla (SFTP) 开始,最直观。

个人开发者/小项目SCP 命令 非常快捷。

正式项目/团队协作Git 是不二之选,它能很好地与 CI/CD(持续集成/持续部署)流程结合。

请根据你的具体情况选择最适合的方法。

文章摘自:https://idc.huochengrm.cn/fwq/18088.html

评论