语料库全栈项目部署 (Vue + Java + CQPweb)

🔍专业的语料处理与对齐利器!内置强力 OCR 引擎,轻松穿透扫描件、双栏与水印。一键洗出纯净文本,智能消除烦人的"回车断行"与乱码。

🔗具备 AI 语义级精准对齐能力,让你彻底告别手工对齐 Excel 的折磨!无视漏翻、错翻,双语段落像拉链般精准咬合,一键生成高质量 Excel 语料。

👉点击跳转到网站,免费送 1000 算力立刻体验!。

🏗️ 架构总览

  • 网络入口:无公网 IP,依靠路由器进行端口映射。
  • Web 网关 :Nginx (部署机 IP: 192.168.1.xx)
    • 80 端口:承载 Vue 前端静态文件,并将 /api 请求反向代理给本地 Java 后端。
    • 83 端口:独立承载 CQPweb 语料库 Web 端。
  • 应用服务
    • Java 后端:运行在本地 8080 端口(通过 Systemd 守护进程管理)。
    • CQPweb:运行在 PHP 8.3-FPM 环境。
  • 数据存储
    • MySQL 数据库:位于局域网独立服务器(IP: 192.168.1.xx)。

一、 基础环境与目录准备 (部署机 192.168.1.xx)

1. 安装核心环境组件

bash 复制代码
sudo apt update
sudo apt install nginx openjdk-17-jdk php8.3-fpm php8.3-mysql php-mbstring php-xml php-curl php-zip -y

2. 创建规范的业务目录并赋予权限

bash 复制代码
# Vue 前端目录
sudo mkdir -p /var/www/html/vue-app
sudo chown -R szcl:szcl /var/www/html/vue-app

# CQPweb 代码目录与独立数据存储目录
sudo mkdir -p /var/www/html/cqpweb
sudo mkdir -p /var/cqpweb/{temp,upload,data,registry}
sudo chown -R www-data:www-data /var/www/html/cqpweb
sudo chown -R www-data:www-data /var/cqpweb

# Java 后端目录
sudo mkdir -p /opt/java-app
sudo chown -R szcl:szcl /opt/java-app

三、 部署 CQPweb 语料库系统

1. 安装 CWB 底层引擎

通过 SFTP 上传 cwb-3.x.x-linux-x86_64.tar.gz(下载地址) 至服务器,解压后进入目录执行安装脚本:

bash 复制代码
sudo ./install-cwb.sh

2. 部署 CQPweb 源码与核心配置

将 CQPweb 源码解压并移动至 /var/www/html/cqpweb 目录。

进入配置目录并基于模板创建正式配置文件:

bash 复制代码
cd /var/www/html/cqpweb/lib
sudo cp framework-for-configuration-file.php config.inc.php
sudo nano config.inc.php

填写数据库及目录路由等关键配置:

bash 复制代码
<?php
$superuser_username = 'admin'; # 超级管理员用户名

$mysql_webuser = 'cqpweb_user'; # 数据库用户名
$mysql_webpass = 'Super_Admin#2026!'; # 数据库密码
$mysql_schema  = 'cqpweb_db'; # 数据库名
$mysql_server  = '192.168.1.XX'; #数据库所在服务器IP

$cqpweb_tempdir   = '/var/cqpweb/temp';
$cqpweb_uploaddir = '/var/cqpweb/upload';
$cwb_datadir      = '/var/cqpweb/data';
$cwb_registry     = '/var/cqpweb/registry';
?>

3. 命令行初始化建表

执行初始化脚本(务必记录终端最终输出的 admin 初始随机密码):

bash 复制代码
sudo -u www-data php /var/www/html/cqpweb/bin/autosetup.php

四、 部署主营业务 (Java + Vue)

1. 上传业务文件

  • 前端:通过 SFTP 将 Vue 编译后的 dist 文件夹内容上传至 /var/www/html/vue-app。

  • 后端:将打好的 app.jar 上传至 /opt/java-app/,并赋予执行权限:

    bash 复制代码
    sudo chmod +x /opt/java-app/app.jar

2. 配置 Systemd 守护进程

创建并编辑服务文件,确保 Java 服务在后台稳定运行并支持开机自启:

bash 复制代码
sudo nano /etc/systemd/system/my-java-app.service

写入以下配置模板:

bash 复制代码
[Unit]
Description=My Spring Boot Application
After=syslog.target network.target

[Service]
User=szcl
ExecStart=/usr/bin/java -jar /opt/java-app/app.jar --server.port=8080
SuccessExitStatus=143
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

激活并启动服务:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable --now my-java-app

五、 Nginx 统一网关路由配置

1. 主业务路由配置 (80 端口)

创建前端及接口代理配置文件:

bash 复制代码
sudo nano /etc/nginx/sites-available/main-app.conf
bash 复制代码
server {
    listen 80;
    server_name _;

    # Vue 前端静态文件路由
    location / {
        root /var/www/html/vue-app;
        index index.html index.htm;
        try_files $uri $uri/ /index.html; 
    }

    # Java 后端接口反向代理
    location /api/ {
        proxy_pass [http://127.0.0.1:8080/](http://127.0.0.1:8080/); 
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

2. CQPweb 独立路由配置 (83 端口)

创建 PHP 代理配置文件:

bash 复制代码
sudo nano /etc/nginx/sites-available/cqpweb.conf
bash 复制代码
server {
    listen 83;
    server_name _;

    root /var/www/html/cqpweb;
    index index.php index.html;

    # 代理至 PHP-FPM 进行解析
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; 
    }

    # 阻挡隐藏文件访问以提升安全性
    location ~ /\.ht {
        deny all;
    }
}

3. 清理默认配置并重载生效

bash 复制代码
# 移除默认占位配置以防冲突
sudo rm /etc/nginx/sites-enabled/default

# 建立软链接激活新配置
sudo ln -s /etc/nginx/sites-available/main-app.conf /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/cqpweb.conf /etc/nginx/sites-enabled/

# 测试语法并重载 Nginx
sudo nginx -t
sudo systemctl reload nginx
相关推荐
逍遥归来2 小时前
《SWIFTER -Swift开发者必备Tips》学习笔记
前端
Lazy_zheng2 小时前
Map / Set / WeakMap / WeakSet,一次给你讲透
前端·javascript·面试
learyuan2 小时前
Windows原生开发
前端
uzong2 小时前
ClaudeCode 入门详细教程,手把手带你Vibe Coding
前端·人工智能
英俊潇洒美少年2 小时前
前端安全 完整精讲
前端·安全
aircrushin2 小时前
2026我最推荐的前端设计skills
前端
problc2 小时前
Pretext —— 无 DOM 文本测量与布局引擎
前端·ai
阿kun要赚马内2 小时前
Python面向对象:@property装饰器
开发语言·前端·python
sunwenjian8862 小时前
Java进阶--IO流
java·开发语言