怎样安装PHP的SourceGuardian扩展

2019年3月14日 | 分类: 【技术】

【介绍】

为了保护开发者代码版权SG11是当前代码加密效率最高的加密组件。

SourceGuardian Pro for PHP是一个PHP脚本的终极保护方案。通过改为暗码的完整内定的字节码,限制scripts、IP 和锁定网域等功能。

sg_load 是 SourceGuardian 扩展提供的全局函数,运行环境需要这个扩展才能执行这段代码。SourceGuardian 提供 php 源码文件的加密,而运行这些加密 php 文件则需要安装扩展:SourceGuardian loader。

PHP script ‘/upgrade.php’ is protected by SourceGuardian and requires a SourceGuardian loader ‘ixed.5.6.lin’ to be installed.

【安装】

在线检测PHP版本精确下载:

网址:https://www.sourceguardian.com/loaders/download.php

输入你的网站中包含 phpinfo() 的页面网址。

在线的检查脚本会根据 phpinfo 的信息,提取到 php 版本信息和扩展路径,然后提示你需要的操作。提示下载什么文件(本例,ixed.5.6.lin),上传到服务器的哪个位置;提示 extension_dir 应设置为绝对路径而非相对路径。

下载所有版本:

下载:https://www.sourceguardian.com/loaders.html

loaders for SourceGuardian 4.0 – 11.2 for PHP(PHP versions from 4.3.x PHP to 7.2.x are fully supported) 【注意:暂不支持PHP 7.3】
SourceGuardian 4.0之前的老版:https://www.sourceguardian.com/ixeds/old_sourceguardian_loaders.html

下载源码包并解压:

mkdir sourceguardian && cd sourceguardian && wget https://www.sourceguardian.com/loaders/download/loaders.linux-x86_64.tar.bz2 && tar -xjvf loaders.linux-x86_64.tar.bz2 && rm loaders.linux-x86_64.tar.bz2 && cd .. && mv sourceguardian /usr/local/sourceguardian

php.ini:

/usr/local/sourceguardian 目录下有一系列.lin文件,版本号是与当前服务器上的PHP版本相对应的,务必保证一致。
带ts的表示 Thread Safety => enabled 情况下所需的文件。如果文件不匹配,将导致sourceguardian加载失败。

查看PHP版本:

php -v

输出:

PHP 5.6.40 (cli) (built: Feb 13 2019 03:09:03)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

查看Thread Safety状态:

php -i | grep "Thread Safety" -i

输出:

Thread Safety => enabled

可以确定使用 ixed.5.6ts.lin 这个文件。

然后编辑 php.ini:

打开 /usr/local/php/etc/php.ini ,在最后一行加入如下代码:

; [SourceGuardian Loader]
extension = /usr/local/sourceguardian/ixed.5.6ts.lin

重启 Apache 后,查看 phpinfo:

SourceGuardian
SourceGuardian Loader Support 	enabled
SourceGuardian Loader Version 	11.2
SourceGuardian Loader Build Number 	0x00000019
Thread Safety 	enabled
phpSHIELD Support 	enabled
Directive	Local Value	Master Value
sourceguardian.restrict_unencoded	0	0

【参考】

参考:http://www.qdyma.com/thread-4384-1-1.html
参考:http://m.aspku.com/view-309138.html
参考:https://bbs.aliyun.com/simple/t538132.html
参考:http://www.cnblogs.com/tangxuliang/p/9401122.html
参考:https://www.laozuo.org/10874.html