我试图保护我的web系统应用程序的一些代码。
对于这个库,我尝试使用PHP的BLENC扩展。
的原因:
因为客户要求,所以请不要混淆话题。
问题
它的结果是BLENC扩展可以很好地使用简单的脚本,但是.我的web应用程序是使用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“中的扩展时,我的web应用程序再次正常运行.所以..。
问题
怎么回事?,我给PHP添加了扩展名(我知道它运行得很好),但是我不加密任何php文件,尝试运行我的web应用程序,我会得到错误.我不知道发生了什么。
不管我有没有加密文件..。一旦我启动分机..。我的web应用程序停止工作,向我展示错误信息。
发布于 2015-06-01 17:15:45
看来你的自动加载系统坏了。
所以,也许自动加载器失败了,因为Blenc有自己的自动加载器,在某种程度上影响了Yii。
在加载扩展时,路径可能会改变,即使这样,我也不确定Yii如何使用它。
另外,请确保这不是Yii或扩展名的问题,而是文件的命名问题。如果文件名为"controller.php“,那么Yii将不会加载名为"Controller”的类,或者在文件中,类的定义有不同的大小写,它必须与大小写匹配。在Windows中,事情可能会起作用,但在Linux中,它总是区分大小写。
链接:
http://www.yiiframework.com/forum/index.php/topic/22756-why-does-autoload-not-work/ Encrypt PHP source code in Yii
所以,也许你可以测试另一个工具,看看你是否得到了同样的错误,这样你就知道它是否应该是Yii,或者是因为扩展中的某个东西。
https://stackoverflow.com/questions/30573558
复制相似问题