PHP - BLENC扩展 - Yii框架

时间:2015-06-01 12:31:09

标签: php yii frameworks blenc

我正在尝试保护我的网络系统应用程序的一些代码。

对于这个pourpouse,我正在尝试使用PHP的BLENC扩展。

原因

  

因为客户要求它,所以请不要混淆主题。

问题

  

结果是BLENC扩展可以很好地使用简单的脚本,但是...我的网络应用程序是使用YII框架制作的,当我尝试访问网站时,它返回以下错误消息......

浏览器输出错误:

include(Controller.php): failed to open stream: No such file or directory 

/opt/lampp/htdocs/vial/yii/framework/YiiBase.php(427)

                    {
                         include($classFile);
                         if(YII_DEBUG && basename(realpath($classFile))!==$className.'.php')
                             throw new CException(Yii::t('yii','Class name "{class}" does not match class file "{file}".', array(
                                 '{class}'=>$className,
                                 '{file}'=>$classFile,
                             )));
                         break;
                     }
                 }
             }
             else
                 include($className.'.php'); //<-----ERROR POINTING HERE
         }
         else  // class name with namespace in PHP 5.3
         {
             $namespace=str_replace('\\','.',ltrim($className,'\\'));
             if(($path=self::getPathOfAlias($namespace))!==false)
                 include($path.'.php');
             else
                 return false;
         }
         return class_exists($className,false) || interface_exists($className,false);
     }
     return true;

附加

我唯一做的就是用“php.ini”激活BLENC扩展名:

extension=blenc.so
blenc.key_file="/opt/lampp...."

我没有加密任何php文件,我收到此错误消息。

额外2

当我在“php.ini”中停用扩展程序时,我的网络应用程序再次正常运行....所以.......

问题

什么事情发生了?,我添加了扩展到PHP(我知道它工作正常),但我不加密任何PHP文件,尝试运行我的网络应用程序,我得到错误....我不知道什么是什么发生。

如果我有或没有加密文件都没关系...一旦我激活扩展程序...我的网络应用程序停止工作,向我显示Yii框架错误消息。

1 个答案:

答案 0 :(得分:0)

看起来Yii自动加载系统被破坏了。

因此,自动加载器可能会失败,因为Blenc有自己的自动加载器,它会以某种方式影响Yii。

加载扩展程序时可能会更改PATH,即使这样我也不确定Yii如何使用它。

还要确保它不是Yii或扩展程序的问题,而是文件的命名。 Yii不会加载名为&#34; Controller&#34;如果文件名是&#34; controller.php&#34;或者在文件内部类的定义有不同的情况,它必须与案例相匹配。在Windows中,事情可能有效,但在Linux中它总是区分大小写。

链接:

http://www.yiiframework.com/forum/index.php/topic/22756-why-does-autoload-not-work/ Encrypt PHP source code in Yii

所以也许你可以测试另一个工具,看看你是否得到了同样的错误,然后你知道它是否应该是Yii,或者是因为扩展内的东西。