└── README.md /README.md: -------------------------------------------------------------------------------- 1 | ## 背景 2 | 由于官方提供的HHVM编译过于复杂,国内也没有一整套的方便运维解决方案,那么我们提供一版baidu的免编译版本供国内对于HHVM的用户进行体验使用,并进行持续更新。 3 | 4 | ## 环境 5 | 6 | 此免依赖安装包,免依赖包和系统无依赖,目前内部使用支持centos6+和redhat4(外部aws可以使用),其他linux版本用户可以进行试用,内核需要linux 2.6.32以上 7 | 8 | ## 安装 9 | 10 | Baidu hhvm 下载地址: 11 | 12 | http://bcs.duapp.com/hhvm-package/hhvm-3.0.1-V0.1.tar.gz 13 | 14 | ### 1.解压hhvm.tar.gz 15 | 16 | tar zxvf hhvm.tar.gz 17 | cd hhvm 18 | 19 | ### 2.通过文本编辑器打开init.sh文件 20 | 21 | vi tools/exec/init.sh 22 | 23 | 修改如下的3个参数: 24 | 25 | HHVM_SOURCE_ROOT=php的源文件路径如(/home/www/app),需要绝对地址,这个是需要自定义的 26 | #hhvm服务的端口 27 | SERVER_PORT=8091 28 | #hhvm 管理端口 29 | ADMIN_PORT=8092 30 | 31 | ### 3.然后运行sh tools/exec/init.sh 32 | 33 | 主要是替换配置文件的路径、noau监控端口、还有设置ld-linux-x86-64.so.2的路径 34 | 35 | 注: 36 | 37 | 如果初始化完毕后,如果要是更换hhvm路径,那么需要重新运行init.sh,因为ld-linux-x86-64.so.2需要绝对路径 38 | 39 | ## 测试 40 | ### 运行脚本 41 | 42 | 编写测试脚本test.php: 43 | 44 | 47 | 48 | 存放在/home/work/data/www下(因为我们上面举例配置sourceroot为这个目录) 49 | 50 | 然后我们运行脚本: 51 | 52 | bin/hhvm_control start 53 | 54 | fastcgi 模式启动: 55 | 56 | 需要通过nginx或者apache 转发到8091端口上,然后通过访问nginx端口访问hhvm的php,如nginx端口是8080,那么则访问http://127.0.0.1:8080/test.php 即可通过8080转发到8091访问我们的php页面; 57 | 58 | 也可以用http模式运行,修改hhvm.conf中fastcgi为Server.Type=libevent即可,这样就可以直接访问端口; 59 | 60 | 停止和重启运行脚本restart和stop即可; 61 | 62 | hhvm 简单运行 63 | 64 | 如果我们不想运行脚本,仅仅测试hhvm,那么我们也可以利用上面写好的脚本,运行: 65 | 66 | bin/hhvm -c conf/hhvm.conf -m server 67 | 68 | ### 目录结构 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 |
目录名称 目录解释
bin存放hhvm可执行文件还有执行脚本
cache存放hhbc文件的目录
conf存放hhvm配置文件的目录
ext存放扩展so的目录
lib存放hhvm依赖的lib的目录
lib64存放hhvm依赖库的lib64目录
loglog存放的位置,运行后会生成目录
monitor监控脚本目录
tools存放初始化文件和配置模板
var存放hhvm.pid的目录
120 | 121 | ### 版本更新和问题提交 122 | 123 | #### git 源 124 | 125 | 更新版本和一些详细内容都在如下git源中进行更新: 126 | 127 | https://github.com/baidu-lamp/baidu-hhvm/ 128 | 129 | #### issue提交 130 | 131 | 遇到的问题可以提交到issue中,我们后期会进行解决: 132 | 133 | https://github.com/baidu-lamp/baidu-hhvm/issues 134 | --------------------------------------------------------------------------------