php_screw的安装与使用


1.下载:http://sourceforge.net/projects/php-screw/files/ php文件通常以文本格式存贮在服务器端, 很容易被别人读到源代码, 为了对源代码进行保护, 可以采用对源代
码进行加密的方式.要实现该功能需要两部分:一是加密程序,实现对PHP文件的加密. 另一个就是对加密过的PHP
文件进行解析, 以得到运行结果. 前者的实现比较简单, 就是一程序而已. 后者的实现大部分都是通过php
module的形式来实现的.
php_screw(螺丝钉)可以实现以上的功能. 2.安装:
安装的目的其实就是产生两个文件:一个是用于加密PHP文件的screw, 另一个就是php加载的解析模块
php_screw.so # tar zxf php_screw-1.5.tar.gz
# cd php_screw-1.5
注:每个加密的文件头部都一个很明显的字符串PM9SCREW, 这样很容易被人猜到是用screw加密的
这个问题的解决需要在安装的第一步就开始. 该标识串在源码的php_screw.h中. 在编译之前, 可以更改这个字
符串, 例如,更改为PeterHu, 相应的下面的长度就不再是10了, 而是\tPeterHu\t,一共7个了.
# /usr/local/php/bin/phpize # ./configure --with-php-config=/usr/local/php/bin/php-config # make && make install 这样, 解析用的php_screw.so就生成了. 接下来要得到加密用的screw
# cd php_screw-1.5/tools # make 这样就生成了screw了. 如果要加密一个lx.php文件, 则: screw lx.php, lx.php就变成加密的了, 原来明文的 lx.php被改名为lx.php.screw 例:/php_screw-1.5/tools/screw /usr/local/apache/htdocs/test.php 为了方便可以( # cp /php_screw-1.5/tools/screw /usr/bin/) 3.修改php.ini配置
接下来的任务就应该是加载php_screw.so模块了,
首先, 将该文件COPY到module目录下, 具体是哪个目录,可以参见/etc/php.ini配置文件中的extension_dir
项,RHEL 5中为/usr/lib/php/modules
通过修改/usr/local/php/etc/php.ini文件, 增加了一句extension=php_screw.so, 重启php-fpm后就成
功了
4.测试:
编写一个hello, world程序,文件名为hello.php如下: <?
echo "Hello,world";
?> 用php hello.php测试程序是否能成功显示, 成功显示后, 用screw对其进行加密(screw helllo.php), 然后
cat一下该php文件, 发现已经不是文本的了, 变成了许多乱字符, 说明加秘成功, 然后再php hello.php, 如
果能正常显示hello,world, 则说明加密的解析也没有问题了, 一切就算OK了

最新文章

  1. 为 Sublime Text 3059 配置 PHP 编译环境
  2. TestNG官方文档中文版(5)-测试方法/类和组
  3. .net字符串数组查找方式效率比较
  4. HTTPS那些事(二)SSL证书
  5. 解决ScrollView嵌套ViewPager出现的滑动冲突问题
  6. ArcGIS 10.1 for Desktop新特性之地理标记照片
  7. 【转】Maven实战(九)---模块聚合和继承
  8. 我眼中的PM
  9. 【VxWorks系列】任务间同步与通信之信号量
  10. Windows Phone APP中禁用截图
  11. WCF RIA Services异常
  12. android 组件内部实现触摸事件,更改背景
  13. 常用HQL集锦
  14. ssh_maven的搭建之dao层的开发
  15. SpriteKit塔防游戏动态改变防御塔价格标签的颜色
  16. Git 操作简介
  17. ThinkPHP+JQuery实现文件的异步上传
  18. spring session使用小记
  19. python cookies提取——从字符串到字典(一行Python代码)
  20. Jmeter之Bean shell使用-常用内置变量

热门文章

  1. SQL Server Profiler和数据库引擎优化顾问
  2. ASIHTTPRequest框架使用总结系列之阿堂教程1(安装配置篇
  3. jmeter 部署问题。
  4. ESB 12种跑法
  5. [转载]linux 清除系统cached
  6. go语言编程小tips
  7. Asp.net问题集锦
  8. Elasticsearch教程(三),IK分词器安装 (极速版)
  9. Android之WebView的使用样例——WebSetting、WebViewClient、WebChromeClient
  10. Linux服务器安全登录设置