JSH-ERP 传统部署 + Nginx 反向代理 + 统一日志收集完整实施文档
一、项目说明与考核标准1. 服务器环境部署节点10.8.0.10ERP 业务主节点MySQL/Redis/JDK/Maven/Node/Nginx/ERP 后端 / Filebeat 全部部署于此 日志存储检索节点10.8.0.11部署 ElasticsearchKibana统一归集全量日志 辅助节点10.8.0.12、10.8.0.13预留扩展本次仅部署单机 ERP 系统CentOS 7.9 x86_64 资源2 核 8G磁盘 50G2. 技术栈清单后端SpringBoot 2.0.0、JDK8、Maven3.8.6数据库MySQL8.0.46缓存Redis6.2.14源码编译前端Vue2、Node16.20.2、npmWeb 反向代理Nginx1.26.1日志方案Filebeat (采集) Elasticsearch (存储) Kibana (检索可视化)二、第一部分基础系统环境初始化10.8.0.10 执行2.1 安装基础工具bashyum install -y wget git vim net-tools lrzsz tree unzip2.2 统一时区Asia / 上海bashtimedatectl set-timezone Asia/Shanghai timedatectl2.3 防火墙放行 80 端口仅对外端口bashsystemctl enable --now firewalld firewall-cmd --permanent --add-port80/tcp # 日志节点开放ES/Kibana端口10.8.0.11执行 firewall-cmd --permanent --add-port9200/tcp firewall-cmd --permanent --add-port5601/tcp firewall-cmd --reload firewall-cmd --list-all2.4 关闭 SELinux实验环境bashsetenforce 0 sed -i s/^SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config getenforce2.5 创建业务所需固定目录bash# ERP总目录 mkdir -p /usr/local/jsh-erp /usr/local/jsh-erp/web /usr/local/jsh-erp/logs # 应用上传/导出/临时目录 mkdir -p /opt/tmp/tomcat /opt/jshERP/upload /opt/jshERP/export # Redis、Maven、Node安装目录 mkdir -p /usr/local/redis /usr/local/maven /usr/local/node # 日志备份、数据库备份目录 mkdir -p /backup/mysql /usr/local/logs_all三、第二部分ERP 系统部署3.1 部署 MySQL 8.03.1.1 安装 MySQL 官方 YUM 源 修复 2023 公钥bashcd /usr/local/src wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm rpm -ivh mysql80-community-release-el7-7.noarch.rpm # 导入新版GPG密钥 wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023 https://repo.mysql.com/RPM-GPG-KEY-mysql-2023 rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023 sed -i s|gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022|\nfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2023| /etc/yum.repos.d/mysql-community.repo # 安装MySQL服务端 yum install -y mysql-community-server systemctl enable --now mysqld mysql --version优先做标红部分3.1.2 修改 Root 密码分步兼容策略bash# 查看临时密码 grep temporary password /var/log/mysqld.log # 登录替换临时密码 mysql -uroot -p临时密码 --connect-expired-password # 执行SQL ALTER USER rootlocalhost IDENTIFIED BY Aa123qwe!; SET GLOBAL validate_password.policyLOW; SET GLOBAL validate_password.length6; ALTER USER rootlocalhost IDENTIFIED BY 123456; FLUSH PRIVILEGES; exit;3.1.3 验证 MySQL 连通性bashmysqladmin -uroot -p123456 ping mysql -uroot -p123456 -h127.0.0.1 -e SELECT VERSION();3.2 编译部署 Redis 6.2.143.2.1 安装高版本 GCC 编译环境bashyum install -y centos-release-scl # 替换SCL源为阿里云vault镜像 sed -i s|^mirrorlisthttp://mirrorlist.centos.org|#| /etc/yum.repos.d/CentOS-SCLo-scl.repo /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo sed -i s|^# *baseurlhttp://mirror.centos.org/centos/7/sclo/$basearch/sclo/|baseurlhttps://mirrors.aliyun.com/centos-vault/7.9.2009/sclo/$basearch/sclo/| /etc/yum.repos.d/CentOS-SCLo-scl.repo sed -i s|^# *baseurlhttp://mirror.centos.org/centos/7/sclo/$basearch/rh/|baseurlhttps://mirrors.aliyun.com/centos-vault/7.9.2009/sclo/$basearch/rh/| /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo yum clean all yum install -y devtoolset-9-gcc devtoolset-9-gcc-c devtoolset-9-binutils make3.2.2 下载编译 Redisbashcd /usr/local/src wget https://download.redis.io/releases/redis-6.2.14.tar.gz tar xzf redis-6.2.14.tar.gz cd redis-6.2.14 scl enable devtoolset-9 make -j2 make install PREFIX/usr/local/redis3.2.3 配置 redis.conf仅本地访问 密码bashmkdir -p /usr/local/redis/conf /var/log/redis /var/lib/redis cp /usr/local/src/redis-6.2.14/redis.conf /usr/local/redis/conf/redis.conf cd /usr/local/redis/conf sed -i s/^# bind 127.0.0.1 -::1/bind 127.0.0.1/ redis.conf sed -i s/^daemonize no/daemonize yes/ redis.conf sed -i s|^logfile |logfile /var/log/redis/redis.log| redis.conf sed -i s|^dir ./|dir /var/lib/redis| redis.conf sed -i s/^# requirepass foobared/requirepass 1234abcd/ redis.conf3.2.4 配置 systemd 托管 Redisbashcat /usr/lib/systemd/system/redis.service EOF [Unit] DescriptionRedis persistent key-value database Afternetwork.target [Service] Typeforking ExecStart/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf ExecStop/usr/local/redis/bin/redis-cli -a 1234abcd shutdown Restarton-failure LimitNOFILE65536 [Install] WantedBymulti-user.target EOF systemctl daemon-reload systemctl enable --now redis # 验证 /usr/local/redis/bin/redis-cli -a 1234abcd ping ss -lntp | grep 63793.3 JDK8 Maven3.8.6 安装3.3.1 JDK8bashyum install -y java-1.8.0-openjdk-devel java -version # 写入全局环境变量 cat /etc/profile EOF export JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk export PATH$JAVA_HOME/bin:$PATH EOF source /etc/profile3.3.2 Maven3.8.6bashcd /usr/local/src wget https://mirrors.huaweicloud.com/apache/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz tar xzf apache-maven-3.8.6-bin.tar.gz -C /usr/local/ mv /usr/local/apache-maven-3.8.6 /usr/local/maven # 环境变量 cat /etc/profile EOF export MAVEN_HOME/usr/local/maven export PATH$MAVEN_HOME/bin:$PATH EOF source /etc/profile mvn -version # 配置阿里云Maven镜像 perl -0777 -pe s| /mirrors| mirror\nidaliyunmaven/id\nmirrorOf*/mirrorOf\nnamealiyun public repo/name\nurlhttps://maven.aliyun.com/repository/public/url\n/mirror\n /mirrors| /usr/local/maven/conf/settings.xml /tmp/settings_new.xml mv /tmp/settings_new.xml /usr/local/maven/conf/settings.xml3.4 拉取 ERP 源码并修改配置3.4.1 浅克隆源码避免 gitee 网络报错bashgit clone --depth 1 https://gitee.com/jishenghua/JSH_ERP.git /tmp/jsh_clone cp -a /tmp/jsh_clone/. /usr/local/jsh-erp/ ls /usr/local/jsh-erp/3.4.2 修改 application.yml 数据库连接参数bashcd /usr/local/jsh-erp/jshERP-boot/src/main/resources cp application.yml{,.bak} sed -i s|useSSLfalse$|useSSLfalse\serverTimezoneAsia/Shanghai\allowPublicKeyRetrievaltrue| application.yml # 查看修改后的JDBC地址 grep url: application.yml3.4.3 初始化 MySQL 业务库并导入 SQLbashmysql -uroot -p123456 -e CREATE DATABASE IF NOT EXISTS jsh_erp DEFAULT CHARACTER SET utf8mb4; mysql -uroot -p123456 jsh_erp /usr/local/jsh-erp/jshERP-boot/docs/jsh_erp.sql # 验证表数量预期32张 mysql -uroot -p123456 -e SELECT COUNT(*) FROM information_schema.tables WHERE table_schemajsh_erp;3.5 SpringBoot 后端打包 systemd 托管启动3.5.1 Maven 打包跳过测试bashsource /etc/profile cd /usr/local/jsh-erp/jshERP-boot mvn clean package -Dmaven.test.skiptrue # 确认产物 ls -lh target/jshERP.jar3.5.2 创建后端服务单元bashcat /usr/lib/systemd/system/jsh-erp.service EOF [Unit] DescriptionJSH ERP Spring Boot Service Afternetwork.target mysqld.service redis.service [Service] Typesimple EnvironmentJAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk WorkingDirectory/usr/local/jsh-erp/jshERP-boot ExecStart/usr/bin/java -jar /usr/local/jsh-erp/jshERP-boot/target/jshERP.jar Restarton-failure RestartSec5 SuccessExitStatus143 [Install] WantedBymulti-user.target EOF systemctl daemon-reload systemctl enable --now jsh-erp # 查看启动日志 journalctl -u jsh-erp -f # 验证端口9999监听 ss -lntp | grep 9999 # 接口访问测试 curl http://127.0.0.1:9999/jshERP-boot/doc.html3.6 前端 Vue 打包部署3.6.1 安装 Node16.20.2CentOS7 兼容版本bashcd /usr/local/src wget https://cdn.npmmirror.com/binaries/node/v16.20.2/node-v16.20.2-linux-x64.tar.xz tar xJf node-v16.20.2-linux-x64.tar.xz -C /usr/local/ mv /usr/local/node-v16.20.2-linux-x64 /usr/local/node ln -sf /usr/local/node/bin/node /usr/bin/node ln -sf /usr/local/node/bin/npm /usr/bin/npm node -v npm config set registry https://registry.npmmirror.com3.6.2 安装依赖 构建 distbashcd /usr/local/jsh-erp/jshERP-web npm install --legacy-peer-deps npm run build # 部署静态文件 cp -r dist/* /usr/local/jsh-erp/web/ chmod -R 755 /usr/local/jsh-erp/web四、第三部分Nginx 反向代理配置4.1 安装 Nginx 官方源bashcat /etc/yum.repos.d/nginx.repo EOF [nginx-stable] namenginx stable repo baseurlhttps://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck1 enabled1 gpgkeyhttps://nginx.org/keys/nginx_signing.key EOF yum install -y nginx nginx -v4.2 ERP 专属站点配置/etc/nginx/conf.d/erp.confbashcat /etc/nginx/conf.d/erp.conf EOF server { listen 80; server_name localhost; gzip on; gzip_min_length 100; gzip_types text/plain text/css application/xml application/javascript; gzip_vary on; # 前端静态页面 location / { root /usr/local/jsh-erp/web; index index.html index.htm; try_files $uri $uri/ /index.html; # 解决刷新404 } # 后端接口反向代理 location /jshERP-boot/ { proxy_pass http://127.0.0.1:9999/jshERP-boot/; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; } } EOF # 删除默认站点 rm -f /etc/nginx/conf.d/default.conf # 校验配置启动 nginx -t systemctl enable --now nginx # 验证前端访问 curl http://127.0.0.1 # 验证代理接口 curl http://127.0.0.1/jshERP-boot/doc.html4.3 ERP 系统验收测试浏览器访问http://10.8.0.10登录页面正常加载超管账号admin / 123456租户账号jsh / 123456采购 / 销售 / 库存菜单正常打开新增业务数据可保存入库深层路由刷新无 404 报错五、第四部分统一日志收集 ELK 部署架构说明采集端10.8.0.10Filebeat采集 MySQL/Redis/Nginx/ERP 后端日志存储检索端10.8.0.11Elasticsearch7.17 Kibana7.17统一存储、关键字检索5.1 日志服务端部署10.8.0.11 执行5.1.1 安装 ESKibanabash# 导入ELK公钥 rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch cat /etc/yum.repos.d/elastic.repo EOF [elastic-7.x] nameElastic repository for 7.x packages baseurlhttps://artifacts.elastic.co/packages/7.x/yum gpgcheck1 gpgkeyhttps://artifacts.elastic.co/GPG-KEY-elasticsearch enabled1 autorefresh1 typerpm-md EOF yum install -y elasticsearch kibana5.1.2 Elasticsearch 配置bashvim /etc/elasticsearch/elasticsearch.yml # 修改核心参数 network.host: 0.0.0.0 http.port: 9200 discovery.type: single-node # 调整内存2G vim /etc/elasticsearch/jvm.options -Xms2g -Xmx2g # 启动ES systemctl enable --now elasticsearch curl http://127.0.0.1:92005.1.3 Kibana 配置bashvim /etc/kibana/kibana.yml server.host: 0.0.0.0 elasticsearch.hosts: [http://127.0.0.1:9200] systemctl enable --now kibana # 访问地址http://10.8.0.11:56015.2 采集端 Filebeat 部署10.8.0.10 执行5.2.1 安装 Filebeatbashyum install -y filebeat5.2.2 完整采集配置 /etc/filebeat/filebeat.ymlyamlfilebeat.inputs: # 1. ERP SpringBoot后端日志 - type: log enabled: true paths: - /usr/local/jsh-erp/logs/jsh-erp.log tags: [erp-backend] fields: service: jsh-erp host_ip: 10.8.0.10 fields_under_root: true # 2. Nginx访问日志 - type: log enabled: true paths: - /var/log/nginx/access.log tags: [nginx-access] fields: service: nginx host_ip: 10.8.0.10 fields_under_root: true # 3. Nginx错误日志 - type: log enabled: true paths: - /var/log/nginx/error.log tags: [nginx-error] fields: service: nginx host_ip: 10.8.0.10 fields_under_root: true # 4. MySQL日志 - type: log enabled: true paths: - /var/log/mysqld.log tags: [mysql] fields: service: mysql8 host_ip: 10.8.0.10 fields_under_root: true # 5. Redis日志 - type: log enabled: true paths: - /var/log/redis/redis.log tags: [redis6] fields: service: redis host_ip: 10.8.0.10 fields_under_root: true # 输出到远端ES服务端 output.elasticsearch: hosts: [10.8.0.11:9200] index: erp-logs-%{YYYY.MM.dd} setup.kibana: host: 10.8.0.11:56015.2.3 启动 Filebeat 并验证采集bash# 校验配置文件 filebeat test config # 测试日志连通ES filebeat test output # 开机自启 systemctl enable --now filebeat # 实时查看采集日志 journalctl -u filebeat -f5.3 日志检索验收标准访问http://10.8.0.11:5601创建索引模式erp-logs-*可按 service 字段过滤service:jsh-erp、service:nginx、service:mysql8支持关键字全文检索如搜索error、Exception、502、login实时刷新日志可查看完整堆栈、接口请求、数据库报错信息区分主机 IP多节点扩展后可统一汇总检索六、启停顺序与开机自启6.1 启动顺序正序bash# 1.数据库 systemctl start mysqld # 2.缓存 systemctl start redis # 3.ERP后端 systemctl start jsh-erp # 4.Nginx前端入口 systemctl start nginx # 5.日志采集 systemctl start filebeat # 日志服务端10.8.0.11 systemctl start elasticsearch systemctl start kibana6.2 停止顺序逆序bashsystemctl stop nginx systemctl stop jsh-erp systemctl stop redis systemctl stop mysqld systemctl stop filebeat # 日志服务端 systemctl stop kibana systemctl stop elasticsearch6.3 开机自启全部已配置bashsystemctl list-unit-files | grep -E mysqld|redis|jsh-erp|nginx|filebeat|elasticsearch|kibana七、数据库定时备份脚本附加运维规范bash# 创建备份脚本 cat /backup/mysql_backup.sh EOF #!/bin/bash DATE$(date %F) # 全量备份保留7天 mysqldump -uroot -p123456 --single-transaction --routines --triggers jsh_erp | gzip /backup/mysql/jsh_erp_${DATE}.sql.gz find /backup/mysql -name *.sql.gz -mtime 7 -delete EOF chmod x /backup/mysql_backup.sh # 定时任务 每日凌晨2点 echo 0 2 * * * /backup/mysql_backup.sh /var/spool/cron/root crontab -l # 恢复示例 # gunzip /backup/mysql/jsh_erp_2026-08-15.sql.gz | mysql -uroot -p123456 jsh_erp八、常见故障排查清单后端报Public Key Retrieval is not allowedapplication.yml 追加allowPublicKeyRetrievaltrue页面 502 Bad Gateway检查 jsh-erp 服务是否启动、9999 端口监听、proxy_pass 路径完整前端刷新 404确认 erp.conf 存在try_files $uri $uri/ /index.html;Filebeat 无日志检查文件路径权限、ES 地址连通性、防火墙 9200 端口放行Kibana 检索不到日志核对 index 索引名称、Filebeat tags/fields 配置正确MySQL 连接失败确认 root 密码 123456、数据库 jsh_erp 已创建、SQL 导入完成

相关新闻

从投料到成品只需90分钟:河北CCS产线的一站式极速之旅,千亿集群加速跑

从投料到成品只需90分钟:河北CCS产线的一站式极速之旅,千亿集群加速跑

动力电池行业的竞争,已经从前端的材料配方延伸到了后端的制造效率。当“量产即出口”成为河北锂电产业的新标签,产业链上游的CCS(Cells Contact System,集成母排)制造环节,正在成为决定整条产线节拍的关键变…

2026/10/14 9:09:54 阅读更多 →
IDEA集成Redis插件全解析:免费与收费方案对比及实战配置指南

IDEA集成Redis插件全解析:免费与收费方案对比及实战配置指南

1. 项目概述:为什么我们需要在IDEA里直连Redis? 作为一名常年泡在Java后端开发里的程序员,我每天打交道最多的除了IDEA,就是各种中间件,Redis绝对是其中的明星。调试代码时,最烦人的场景之一就是&#xff1…

2026/10/14 10:11:03 阅读更多 →
ReAct Agent失控风险剖析与工程化防护策略

ReAct Agent失控风险剖析与工程化防护策略

这次我们来看一个在 AI 领域,尤其是智能体(Agent)开发中备受关注的话题:ReAct Agent 的失控风险。ReAct(Reasoning Acting)作为一种经典的智能体推理框架,其核心思想是让模型通过“思考-行动”…

2026/10/14 10:10:11 阅读更多 →

最新新闻

Django+Flask智能营销系统:银行数字化转型实战

Django+Flask智能营销系统:银行数字化转型实战

1. 项目背景与核心价值在金融数字化转型浪潮中,银行业务营销正从传统人工经验驱动转向数据智能驱动。这个基于DjangoFlask的智能营销系统,正是利用爬虫技术获取多维金融数据,通过大数据分析生成客户画像,最终以可视化大屏呈现营销…

2026/10/14 10:10:46 阅读更多 →
从混乱到有序:打造本地优先的游戏库管理工具

从混乱到有序:打造本地优先的游戏库管理工具

最近我把游戏相关的一堆零散信息从脑子里和表格里拎了出来,整合成一个跑在局域网里的本地资料库小工具,代号 AnyPS5 。起因特别朴素:每次想开一个新游戏,我都得先花几分钟去回忆这台主机还剩多少空间、某张光盘到底通关没有、存…

2026/10/14 10:10:46 阅读更多 →
PHP服装购物系统开发实战:LAMP架构与电商解决方案

PHP服装购物系统开发实战:LAMP架构与电商解决方案

1. 项目概述:PHP木兮服装购物系统 这套基于PHP开发的服装购物系统,是我在电商领域摸爬滚打多年后沉淀下来的实战作品。系统采用经典的LAMP架构(LinuxApacheMySQLPHP),特别适合中小型服装商家快速搭建线上销售渠道。源码…

2026/10/14 10:10:46 阅读更多 →
CATIA零件设计必备:点线面创建方法详解与避坑指南

CATIA零件设计必备:点线面创建方法详解与避坑指南

简介:这套培训课件名为《点线面的创建》,是一份面向初学者的演示文稿教材。内容围绕零件设计工作台展开,重点讲解参考点、参考线和参考平面的构建方法。课件先介绍进入工作台的几种方式,然后系统演示点的生成:可通过坐…

2026/10/14 10:10:46 阅读更多 →
深入理解DiT:视频生成背后的统一架构

深入理解DiT:视频生成背后的统一架构

Sora刚发布那阵子,整个视频生成圈子几乎可以用"炸锅"来形容。大家看完官方放出的几个demo,第一反应是画质真高、时长真长、物理规律像模像样,第二反应才是琢磨:这玩意到底是怎么做的?OpenAI没发技术报告&…

2026/10/14 10:10:46 阅读更多 →
对话式地图助手落地实践:语言模型到地图动作的适配层设计

对话式地图助手落地实践:语言模型到地图动作的适配层设计

从聊天机器人一脚踩进地图场景的那段时间,我被一个问题折磨了很久:语言模型再能聊,跟地图引擎之间始终隔着一道墙。用户在对话框里说"帮我找滨河公园附近评分高的粤菜馆,然后规划一条地铁过去的路线",前端却…

2026/10/14 10:09:42 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →