温馨提示×

ubuntu php怎样加密

小樊
44
2026-10-10 06:55:02
栏目: 编程语言

在 Ubuntu 上给 PHP 代码“加密”,通常有以下几种常见场景和方案。先说结论,再给具体做法。


一、常见 PHP 加密/保护方式

1️⃣ 使用 opcode 加密(最常用)

把 PHP 编译成字节码,源码不可读。

✅ 推荐:Swoole Compiler / ionCube / Zend Guard

  • ionCube(最成熟,商业)
  • Swoole Compiler(国产,性能高)
  • Zend Guard(老,基本淘汰)
ionCube 示例(Ubuntu)
sudo apt update
sudo apt install php-cli
  1. 下载 ionCube Loader
    https://www.ioncube.com/loaders.php

  2. 解压并复制 loader

tar -xzf ioncube_loaders_lin_x86-64.tar.gz
sudo cp ioncube/ioncube_loader_lin_8.1.so /usr/lib/php/20210902/
  1. 修改 php.ini
zend_extension=/usr/lib/php/20210902/ioncube_loader_lin_8.1.so
  1. 加密代码
ioncube_encoder /var/www/html /var/www/encoded

2️⃣ 使用 Swoole Compiler(推荐国产方案)

pecl install swoole

加密:

php swoole-compiler encode app.php

✅ 优点:

  • 性能高
  • 支持 PHP 8
  • 不需要额外运行时(除 Swoole)

3️⃣ 混淆(不是真正加密,但常用)

适合不想花钱的场景。

工具:

  • yakpro-po
  • PHP Protect
  • php-obfuscator

示例(yakpro-po):

git clone https://github.com/pk-fr/yakpro-po
php yakpro-po.php source.php > encoded.php

⚠️ 只能防小白,不能防逆向。


4️⃣ 用扩展隐藏逻辑(高级)

把核心逻辑写成 C 扩展

  • 安全级别最高
  • 开发成本高

二、如果只是“数据加密”

如果你只是想:

  • 加密配置
  • 加密用户数据

直接用 PHP 内置函数即可:

// AES 加密
$data = openssl_encrypt(
    'secret',
    'AES-256-CBC',
    $key,
    0,
    $iv
);

三、选择建议(直接看)

需求 推荐
商业项目 ionCube
高性能 Swoole Compiler
免费 混淆工具
核心算法 C 扩展
数据加密 OpenSSL

如果你告诉我:

  • PHP 版本
  • 是否商业
  • 想保护源码还是数据

我可以给你最合适的方案和完整命令。

0 踩