作者: 启鑫

  • Debian 13(Trixie)上禁用 IPv6

    在 Debian 13(Trixie) 上通过 GRUB 内核参数 的方式彻底禁用 IPv6。

    一、禁用原理

    通过向 Linux 内核传递启动参数 ipv6.disable=1,在系统启动时直接禁用 IPv6 协议栈,相比 sysctl 或 NetworkManager 方式更加彻底,不会被系统服务重新启用。


    二、操作步骤

    编辑 GRUB 配置文件

    使用文本编辑器打开 GRUB 默认配置文件:

    nano /etc/default/grub

    修改内核启动参数

    找到如下这一行:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet"

    修改为:

    GRUB_CMDLINE_LINUX_DEFAULT="quiet ipv6.disable=1"

    如果该行中已有其他参数,请保留原参数,只需追加 ipv6.disable=1 即可。

    更新 GRUB 配置

    执行以下命令使配置生效:

    update-grub

    确认命令执行过程中未报错。

    重启系统

    reboot
  • ComfyUI 更新到最新版本教程

    已安装 ComfyUI 的情况下更新到最新版本,不包含首次安装与环境创建步骤。

    一、更新 ComfyUI

    激活 Conda 环境

    conda activate comfyui

    如果你的环境名不是 comfyui,请替换为实际名称。

    进入 ComfyUI 目录

    cd ComfyUI

    拉取最新官方代码

    git pull

    更新 Python 依赖库

    pip install -r requirements.txt --upgrade

    二、更新完成后启动

    python main.py

    浏览器访问:

    http://127.0.0.1:8188
  • Debian 13 配置第二块网卡并设置默认路由优先级

    在服务器或虚拟机环境中,服务器需要使用 双网卡结构,例如:

    • 一张卡走业务网络
    • 一张卡走管理网络
    • 或者一张主用,一张备用

    一、确认网卡是否识别

    执行:

    ip a

    如果看到类似:

    ens33:
    ens37:

    说明第二块网卡已经被系统正常识别。

    二、配置第二块网卡

    编辑网络配置文件:

    nano /etc/network/interfaces

    完整配置如下:

    # The primary network interface
    allow-hotplug ens33
    iface ens33 inet dhcp
        metric 100
    # The second network interface
    auto ens37
    iface ens37 dhcp
        metric 300

    三、什么是 metric

    在 Linux 中:

    metric 越小,优先级越高

    例如:

    metric含义
    0最高优先级
    100高
    300低
    1000+极低

    四、重启网络使配置生效

    systemctl restart networking

    五、验证默认路由是否正确

    查看路由表:

    ip route

    正常应显示:

    default via 172.16.1.1 dev ens37 metric 100
    default via 172.17.1.1 dev ens33 metric 300

    验证真实出口:

    ip route get 8.8.8.8

    如果看到:

    dev ens33

    所有默认流量已经从主网卡 ens33 出口走

  • WordPress 高性能配置指南:PHP 8.3+、MySQL 8.0+ 与云主机选型最佳实践

    WordPress 是一个依赖于强大技术栈的动态内容管理系统(CMS),它需要 PHP 运行环境、MySQL/MariaDB 数据库、Web 服务器(如 Nginx/Apache)和服务器文件系统 协同工作。配置的优劣直接决定了您网站的长期生命力,体现在以下四个核心维度:

    1. 性能(Performance): 合理的配置,尤其是新版 PHP 和高性能数据库,能显著减少TTFB(首字节时间)和页面加载速度,直接影响用户体验和搜索引擎排名(SEO)。
    2. 兼容性(Compatibility): 随着 WordPress 核心、插件和主题的不断更新,使用最新的软件环境(如 PHP 8.3+)是确保所有功能正常运行、避免冲突和错误的先决条件。
    3. 安全性(Security): 主流软件的新版本通常修复了已知的安全漏洞。过时的环境配置是网站被攻击的主要入口,保持更新是最低且最有效的安全防护措施。
    4. 稳定性(Stability): 资源(CPU、内存)配置充足,且软件版本稳定,能确保网站在高并发访问或执行复杂任务(如数据导入、定期备份)时,不会崩溃或响应缓慢。

    强烈建议您选择并维护最新的软件环境,这是构建一个高性能、安全可靠的现代化 WordPress 网站的基石。

    官方推荐的软件环境

    为了确保最佳的兼容性和性能,WordPress 官方建议您的主机环境支持以下关键功能:

    • PHP 版本: 8.3 或更高版本。
    • 数据库: MySQL 8.0 或更高版本,或 MariaDB 10.6 或更高版本。
    • Web 服务器: 我们推荐使用 Apache 或 Nginx,它们是运行 WordPress 最稳定、功能最齐全的服务器。
    • 安全性: 必须支持 HTTPS。

    为了确保您的主机环境符合要求,您可以参考并使用以下标准咨询模板与主机商进行沟通:

    我对运行开源 WordPress 网站软件(https://wordpress.org/)很感兴趣,我想知道我的账户或云主机是否完全支持以下配置:

    • PHP 8.3 或更高版本
    • MySQL 8.0 或更高版本,或者 MariaDB 10.6 或更高版本
    • 使用 mod_rewrite 模块的 Nginx 或 Apache 服务器
    • 完整的 HTTPS / SSL 支持

    谢谢您的协助!

    云主机硬件选型:性能指标与配置建议

    选择合适的云主机硬件是确保 WordPress 网站流畅运行和应对流量变化的基础。以下配置建议旨在帮助您根据不同的网站规模和访问需求,做出最经济高效的决策。

    用途/规模建议 CPU 配置建议 内存 (RAM)存储类型及容量带宽 / 网络要求适用场景说明
    个人博客 / 启动项目1 核 vCPU1 – 2 GB20 – 30 GB SSD普通共享带宽资源要求低,适合静态内容为主、低频更新、访问量较小的初级站点。
    中型企业 / 商业网站2 核 vCPU2 – 4 GB40 – 60 GB SSD (高性能型)中等带宽,支持更高并发连接适用于运行复杂插件、电子商务功能、多用户互动和中等到访客量的商业网站。
    大型网站 / 高流量平台4 核或以上 vCPU 4 – 8 GB 或更多80 GB+ NVMe SSD专用高带宽,高并发处理能力专为支撑高访问量峰值、大量媒体文件(如图库、视频)和密集数据库查询操作而设计。

    硬件选购建议:

    1. 优先使用 SSD 存储: 相比传统机械硬盘 (HDD),固态硬盘 (SSD),尤其是 NVMe SSD,提供了数倍的读写速度,这对提升数据库查询性能和页面加载速度至关重要。
    2. 预留资源余量: 配置时应避免“刚好够用”的情况,建议预留至少 30% 的资源余量,以应对未来流量增长、新增插件负载、系统备份或缓存重建等临时性高需求。
    3. 关注弹性扩展能力: 如果预见到网站未来有快速增长的潜力,选择支持 纵向扩展(即快速升级 CPU、内存和存储)的云主机/VPS,可以大幅简化日后的运维和迁移工作。

    网站运维与安全:

    有效的运维策略和安全防护措施,是保障 WordPress 网站长期、稳定、高性能运行的关键。

    • 数据备份与灾难恢复(Backup): 启用主机商提供的自动快照或定期备份功能。建议进行异地备份,以防单点故障或数据丢失,确保在意外发生时能够迅速恢复。
    • 安全传输协议(HTTPS/SSL): 强制全站使用 HTTPS。使用 SSL / TLS 证书(如免费的 Let’s Encrypt)保障用户数据传输的安全与隐私。
    • 软件与环境更新(Updates): 保持 PHP 版本、数据库、WordPress 核心程序、所有插件和主题处于最新状态。这是降低安全风险、获得最佳兼容性与性能的最基础且关键的措施。
    • Web 服务器与缓存优化(Caching/CDN): 对于流量较大的网站,建议配置高性能的 Nginx 服务器。结合专业的缓存插件和 CDN(内容分发网络),全面提升内容加载速度和并发处理能力。
    • 主动安全防护(WAF/DDoS): 启用云主机或网络服务商提供的防火墙(如 WAF,Web 应用防火墙)和 DDoS 保护。设置合理的安全策略,有效保障网站抵御各种网络攻击。
  • 使用 Docker 一键部署本地 WordPress 开发环境

    下面是一份适合完全新手的 WordPress 本地安装教程(使用 Docker Desktop + docker compose)

    1. 为什么选择 Docker 部署 WordPress?

    对于初学者来说,Docker 就像是一个“虚拟打包盒”。它将 WordPress 运行所需的所有组件(数据库、PHP、Web服务器等)打包在隔离的环境中运行,完全不干扰你的电脑主机系统。

    主要优势对比:传统环境 vs. Docker 容器

    特性传统安装 Docker 容器化部署
    环境配置需手动安装和配置 PHP、MySQL、Nginx/Apache,易出现版本冲突和依赖错误。仅需一个配置文件 (docker-compose.yml),环境自动搭建,保证一次成功。
    系统侵入安装组件会修改操作系统配置,可能与其他软件冲突。环境完全隔离,零侵入主机系统,不产生任何“数字垃圾”。
    可移植性难以将环境从一台电脑迁移到另一台,或从本地迁移到云服务器。极高的可移植性。只需复制项目文件夹,即可在任何支持 Docker 的机器上一键还原。
    启动/停止需要分别启动和关闭 Web 服务、数据库服务等多个进程。使用 docker compose up -d 和 down 命令,一键管理所有服务。

    简而言之,Docker 是现代本地开发的首选方案。它帮你彻底告别环境配置的噩梦,让你将所有精力集中在 WordPress 本身,实现真正的即开即用。

    2. 安装 Docker Desktop 与创建独立项目目录

    2.1 安装 Docker Desktop (核心工具)

    访问 Docker 官方网站下载并安装适用于您操作系统的版本:

    https://www.docker.com/products/docker-desktop/

    安装完成后,请打开 Docker Desktop 应用程序,并确保左下角的状态显示为 Running(正在运行)。

    2.2 创建项目工作目录

    在您喜欢的位置(如桌面或文档文件夹),创建一个新的空文件夹,作为您的 WordPress 项目目录。所有配置文件和数据都将保存在这里。

    wordpress-docker

    3. 核心配置:编写 docker-compose.yml 文件

    进入 wordpress-docker 文件夹,新建一个名为 docker-compose.yml 的文件。

    把下面内容完整粘贴进去:

    services:
    
      db:
        image: mysql:8.0
        restart: always
        environment:
          MYSQL_DATABASE: wordpress
          MYSQL_USER: wordpress
          MYSQL_PASSWORD: wordpress
          MYSQL_ROOT_PASSWORD: qixinlee.com
        volumes:
          - ./mysql:/var/lib/mysql
        networks:
          - wordpress_network
    
      wordpress:
        image: wordpress:latest
        restart: always
        ports:
          - "80:80"
        environment:
          WORDPRESS_DB_HOST: db
          WORDPRESS_DB_USER: wordpress
          WORDPRESS_DB_PASSWORD: wordpress
          WORDPRESS_DB_NAME: wordpress
        volumes:
          - ./web:/var/www/html
          - ./logs:/var/log/apache2  
        networks:
          - wordpress_network
    
      phpmyadmin:
        image: phpmyadmin:latest
        restart: always
        ports:
          - "8080:80"
        environment:
          PMA_HOST: db
        networks:
          - wordpress_network
    
    networks:
      wordpress_network:

    保存文件即可。

    4. 执行部署:启动容器并验证服务状态

    这是最关键的一步,我们将通过终端命令启动 WordPress 环境。

    4.1 打开终端并导航到项目目录

    首先,根据您的操作系统,打开相应的终端工具:

    系统终端工具
    WindowsPowerShell / CMD
    Mac / LinuxTerminal

    如何确定路径?

    您需要告诉终端工具您的项目文件夹 wordpress-docker 位于电脑的哪个位置。

    1. 找到项目位置: 找到您在 步骤 2 中创建的 wordpress-docker 文件夹。
    2. 复制完整路径:
    • Windows 用户: 在文件管理器中,点击地址栏并复制完整的路径(例如 C:\Users\YourName\Desktop\wordpress-docker)。
    • Mac / Linux 用户: 右键点击文件夹,选择“获取信息”或“属性”,然后复制路径。

    执行导航(cd 命令):

    使用 cd (Change Directory) 命令进入该文件夹。请将下面的示例路径替换为您自己电脑上的实际路径(YourName 也要替换)。

    • 如果您的文件夹在 Windows 桌面:
    cd C:\Users\YourName\Desktop\wordpress-docker
    • 如果您的文件夹在 Mac/Linux 桌面:
    cd /Users/YourName/Desktop/wordpress-docker

    成功进入文件夹后,您就可以进行下一步的启动操作了。

    4.2 执行启动命令

    运行以下命令来启动所有服务。-d 参数表示在后台(分离模式)运行容器:

    docker compose up -d

    提示: 第一次运行会自动下载 WordPress、MySQL 和 phpMyAdmin 的镜像文件——请耐心等待下载和创建过程完成。

    4.3 验证服务状态

    启动完成后,运行以下命令检查容器状态:

    docker compose ps

    如果看到以下三个服务都显示为 running,则表示部署成功:

    服务状态
    dbrunning
    wordpressrunning
    phpmyadminrunning

    5. 首次访问:通过浏览器完成 WordPress 首次安装

    浏览器访问:

    http://localhost

    第一次访问会进入 WordPress 安装向导:

    1. 选择语言
    2. 输入站点名称、管理员账号密码
    3. 完成安装并进入后台

    之后,你就能正常管理网站、安装主题、安装插件、写文章了。

    6. 数据库管理:通过 phpMyAdmin 图形界面管理数据库

    phpMyAdmin 是一个流行的、基于 Web 的 MySQL 数据库管理工具。如果你需要手动检查 WordPress 的数据表结构、备份数据,或进行高级的数据库操作,可以使用这个工具。

    浏览器访问:

    http://localhost:8080

    登录时,请使用您在 docker-compose.yml 文件中为 db 服务配置的凭证:

    字段值
    用户名wordpress
    密码wordpress

    7. 容器操作:停止、重启与日志查看

    动作命令
    停止所有服务docker compose down
    重启所有服务docker compose restart
    查看日志docker compose logs -f

    停止不会删除数据,因为数据库文件和网站文件都保存在你本地文件夹里。

    现在你成功拥有了本地 WordPress 环境

    以后开发或者测试主题、插件,都只需要:

    docker compose up -d

    就能一键启动 WordPress

  • AWS、Azure、GCP 服务器选型深度对比:网站架构师的决策指南

    选择合适的云平台是现代网站架构成功的关键第一步。从核心计算、网络性能、成本结构、安全合规和运维工具链这五个关键维度,对 AWS、Azure 和 Google Cloud Platform (GCP) 进行深入比较

    一. 核心计算服务对比:性能与弹性

    网站的核心是其运行的计算实例。三大云平台都提供了强大的虚拟机 (VM) 服务,但各有侧重。

    1. 基础虚拟机 (VM) 与服务器性能

    平台核心服务性能优势
    AWSEC2 (Elastic Compute Cloud)实例类型最丰富,硬件迭代快,适用于各类工作负载。
    AzureVirtual Machines与 Windows Server 生态深度集成,提供针对 HPC 的高性能实例。
    GCPCompute Engine提供自定义机器类型,以 Live Migration (实时迁移) 闻名,在单核性能上表现突出。

    弹性伸缩:

    • AWS 的 Auto Scaling Group (ASG) 是行业标杆。
    • Azure Scale Sets 易于配置,尤其适合微软技术栈。
    • GCP 的实例组在网络性能和启动速度上具有优势。

    2. 云原生:容器与无服务器计算

    对于追求敏捷性和成本效益的现代网站,容器和无服务器是首选。

    • Kubernetes (K8s): GCP GKE 作为 Kubernetes 的发源地,在集群管理、自动化升级和安全性方面处于行业领先地位,是云原生应用的理想选择。AWS EKS 和 Azure AKS 同样成熟,但 GKE 的管理体验往往更胜一筹。
    • Serverless 容器: GCP Cloud Run 允许开发者将任何容器化应用部署为完全无服务器服务,按请求计费,极大地提高了灵活性和资源利用率。AWS Fargate 和 Azure Container Apps 提供了类似服务,但 Cloud Run 在容器 Serverless 领域具有独特性。
    • 函数即服务 (FaaS): AWS Lambda 依然是市场领导者,生态系统最成熟,集成服务最多。Azure Functions 擅长与 Azure 内部服务和事件集成,而 GCP Cloud Functions 简洁高效。

    二. 网站关键交付、全球网络与速度特性

    网络的低延迟和高吞吐量对用户体验至关重要。

    1. 全球骨干网与网络速度

    • GCP 的核心优势在于其全球骨干网。 Google 拥有庞大的私有光纤网络,可以确保跨区域甚至跨大洲的数据传输延迟极低。对于目标用户分布在全球的网站、游戏后端或实时通信应用,GCP 在网络速度上通常表现突出。
    • 负载均衡: AWS ELB (ALB/NLB) 功能全面。GCP Cloud Load Balancing 强调高性能的全球单 IP 模式,实现真正的全球统一入口。

    2. 内容分发网络 (CDN)

    • AWS CloudFront: 接入点 (PoP) 数量众多,与 AWS S3 和 EC2 集成度最高,生态成熟。
    • GCP Cloud CDN: 利用 Google 骨干网,缓存命中率高,尤其适合搭配 GCP 的存储服务。
    • 选择依据: 客户地理位置、缓存策略和与云主机服务的集成便利性。

    3. 数据库服务

    • AWS: RDS 提供了 MySQL、PostgreSQL 等托管服务,而 Aurora 则是其高性能、兼容 MySQL/PostgreSQL 的云原生数据库旗舰,是关系型数据库的首选。
    • GCP: Cloud Spanner 提供了全球分布式、强一致性的关系型数据库,适用于对数据一致性要求极高的金融或全球应用;Firestore 适合实时 Web 应用。
    • Azure: Cosmos DB 是强大的多模型(文档、键值、图形)全球分布式 NoSQL 数据库。

    三. 定价、成本控制与灵活性

    数据出站 (Egress) 费用是网站运营的主要隐藏成本。

    1. 核心计算折扣机制

    • AWS: 主要依赖 Reserved Instances (RI) 和 Savings Plans。Savings Plans 提供了跨实例、跨区域的高度灵活性,但需要用户做出提前承诺。
    • GCP: 提供独特的持续使用折扣 (SUC),即 VM 实例运行时长达到一定阈值后,无需提前承诺,折扣会自动应用。这对于流量波动较大的网站尤其友好;同时提供灵活的承诺使用折扣 (CUD)。
    • Azure: 主要通过 Reserved VM Instances (RIs) 提供折扣;对使用 Windows Server 的客户,其授权费用集成在价格中,具有优势。

    2. 数据出站 (Egress) 成本

    所有云平台都对数据出站收费,这是公有云最昂贵的服务之一。AWS 和 Azure 的出站基础费率相对较高,需要通过 CDN 大幅降低成本。GCP 在跨区域互联和出站费用上通常更具竞争力,特别是利用其全球骨干网进行区域间传输时。

    四. 安全与合规性

    1. 身份与访问管理 (IAM)

    • AWS IAM: 最为复杂,权限控制粒度最细,但也最难配置。其默认策略是“拒绝一切”,安全性高。
    • Azure AD: 与企业级 Active Directory 深度集成,是组织管理用户身份和权限的首选,非常适合已使用微软服务的企业。
    • GCP IAM: 基于资源层次结构,权限模型相对简洁,易于理解和实施最小权限原则。

    2. 基础网络安全与防护

    三大平台均提供 Web 应用防火墙 (WAF) 和 DDoS 防护服务。AWS WAF/Shield、Azure Front Door/WAF 和 GCP Cloud Armor 是各自的旗舰产品,功能类似,主要区别在于与各自生态系统的集成度。

    五. 运维、监控与工具链

    1. 托管平台服务 (PaaS) 易用性

    对于希望最小化运维投入的网站,PaaS 是理想选择。

    • Azure App Service: 提供了极简化的 PaaS 体验,支持多语言,运维投入极低,是快速部署 Web App 的利器。
    • GCP Cloud Run: 提供了容器即服务的 PaaS 体验,兼具 Serverless 的优势和容器的灵活性,是现代应用的首选 PaaS。
    • AWS Elastic Beanstalk: 易于初次部署,但长期运维和定制化配置相对复杂。

    2. 监控与可观测性

    • AWS CloudWatch: 成熟、全面,与所有 AWS 服务深度集成。
    • GCP Cloud Operations (Stackdriver): 功能强大,在日志聚合和故障诊断方面表现优异,尤其是在 K8s 监控方面。
    • Azure Monitor: 提供全面的指标和日志收集,与 Azure 服务和混合云环境集成良好。

    六. 场景分类

    根据网站的关键需求,以下是云平台的选择建议:

    场景分类网站特点首选云平台选型理由
    全球化与低延迟应用用户分布全球、游戏、实时通信GCP卓越的全球骨干网,跨区域低延迟,高性能单 IP 负载均衡。
    云原生与容器化应用使用 Docker/K8s、追求 ServerlessGCPGKE 行业领先;Cloud Run 提供了终极容器 Serverless 体验。
    传统企业与微软生态大量使用 .NET、Windows Server、SQL ServerAzure与企业 Active Directory 和微软技术栈深度集成,方便混合云迁移。
    生态工具链与市场主导追求功能最全、社区资料最多、不惧怕复杂性AWS最庞大的服务目录和最大的市场份额,资源和解决方案最丰富。
    成本敏感型与初创型预算有限、流量波动大GCP自动应用的持续使用折扣 (SUC);灵活的 Serverless 选项(Cloud Run)。