保护PHP源代码

时间:2014-03-28 07:53:15

标签: php linux windows

由于我国的互联网带宽不好,客户希望我在他的Windows服务器或Linux服务器上安装我的PHP / MySQL应用程序。

保护源代码的最佳方法是什么?或者PHP源代码所在的文件夹。客户端应该能够自由使用服务器的其余部分。

谢谢。 西里尔

4 个答案:

答案 0 :(得分:2)

你可以使用代码混淆器

这是example

但是(很难)代码可以重新转换,但至少使代码更难阅读

示例1

<?php
    echo phpinfo();
?>

会变成这样的东西

<?php $XnNhAWEnhoiqwciqpoHH=file(__FILE__);eval(base64_decode("aWYoIWZ1bmN0aW9uX2V4aXN0cygiWWl1bklVWTc2YkJodWhOWUlPOCIpKXtmdW5jdGlvbiBZaXVuSVVZNzZiQmh1aE5ZSU84KCRnLCRiPTApeyRhPWltcGxvZGUoIlxuIiwkZyk7JGQ9YXJyYXkoNjU1LDIzNiw0MCk7aWYoJGI9PTApICRmPXN1YnN0cigkYSwkZFswXSwkZFsxXSk7ZWxzZWlmKCRiPT0xKSAkZj1zdWJzdHIoJGEsJGRbMF0rJGRbMV0sJGRbMl0pO2Vsc2UgJGY9dHJpbShzdWJzdHIoJGEsJGRbMF0rJGRbMV0rJGRbMl0pKTtyZXR1cm4oJGYpO319"));eval(base64_decode(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH)));eval(ZsldkfhGYU87iyihdfsow(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,2),YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,1)));__halt_compiler();aWYoIWZ1bmN0aW9uX2V4aXN0cygiWnNsZGtmaEdZVTg3aXlpaGRmc293Iikpe2Z1bmN0aW9uIFpzbGRrZmhHWVU4N2l5aWhkZnNvdygkYSwkaCl7aWYoJGg9PXNoYTEoJGEpKXtyZXR1cm4oZ3ppbmZsYXRlKGJhc2U2NF9kZWNvZGUoJGEpKSk7fWVsc2V7ZWNobygiRXJyb3I6IEZpbGUgTW9kaWZpZWQiKTt9fX0=684ec3cc57884cf14d34c372f3ab886384a059a3S03OyFcoyCjIzEvL19C0BgA=

示例2

<?php
for( $i = 1; $i <= 10; $i++ ) {
    echo( '5x'.$i.'='.(string)($i*5)."\n" );
}
?>

会变成这样的东西

<?php $XnNhAWEnhoiqwciqpoHH=file(__FILE__);eval(base64_decode("aWYoIWZ1bmN0aW9uX2V4aXN0cygiWWl1bklVWTc2YkJodWhOWUlPOCIpKXtmdW5jdGlvbiBZaXVuSVVZNzZiQmh1aE5ZSU84KCRnLCRiPTApeyRhPWltcGxvZGUoIlxuIiwkZyk7JGQ9YXJyYXkoNjU1LDIzNiw0MCk7aWYoJGI9PTApICRmPXN1YnN0cigkYSwkZFswXSwkZFsxXSk7ZWxzZWlmKCRiPT0xKSAkZj1zdWJzdHIoJGEsJGRbMF0rJGRbMV0sJGRbMl0pO2Vsc2UgJGY9dHJpbShzdWJzdHIoJGEsJGRbMF0rJGRbMV0rJGRbMl0pKTtyZXR1cm4oJGYpO319"));eval(base64_decode(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH)));eval(ZsldkfhGYU87iyihdfsow(YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,2),YiunIUY76bBhuhNYIO8($XnNhAWEnhoiqwciqpoHH,1)));__halt_compiler();aWYoIWZ1bmN0aW9uX2V4aXN0cygiWnNsZGtmaEdZVTg3aXlpaGRmc293Iikpe2Z1bmN0aW9uIFpzbGRrZmhHWVU4N2l5aWhkZnNvdygkYSwkaCl7aWYoJGg9PXNoYTEoJGEpKXtyZXR1cm4oZ3ppbmZsYXRlKGJhc2U2NF9kZWNvZGUoJGEpKSk7fWVsc2V7ZWNobygiRXJyb3I6IEZpbGUgTW9kaWZpZWQiKTt9fX0=677f209731e728fdbcbec2b1e7f962f8042b6d7aS8sv0lBQyVSwVTC0BtE2QIYBiKWtraCpUM3LlZqcka+hoGRaoaSnkqmnZKukp1FcUpSZl66poZKpZaqppxSTp6Sgac3LVQsA

答案 1 :(得分:1)

保护您的PHP代码的最佳方法是imho http://www.ioncube.com/

我不推荐使用Zend Guard,因为存在一些可以重新编译(不完美)已编译的php代码的工具。

PHP Encode也是一个坏主意,因为它比其他编码器更慢地减慢你的PHP代码。

答案 2 :(得分:1)

您可以在线混淆php代码的混淆器/编码器like this。此工具通过强大的技术保护代码,比重写更容易重写。

答案 3 :(得分:0)

您可以对服务器上的php文件进行模糊处理以获得额外保护。如果攻击者最终进入,则混淆会使攻击者更难理解您的代码。请记住保留对文件进行无混淆的备份。

退房 Zend Guard