使用非root用户在RedHat 4下安装XHProf

时间:2020-12-21 16:05:49

  XHProf是一个PHP性能分析工具。我采用的XHProf版本为0.9.4,下载地址:http://pan.baidu.com/s/1jGGgYMi

  以下是在RedHat 4.4.7环境下安装、配置和测试XHProf的步骤。在有的RedHat版本上也通过了安装。这里选择的是非root用户安装,所以步骤可能繁杂了一些。

  1.首先需要安装好Apache和PHP两个工具。此为安装XHProf之基础。

  2.不过,还有两个“部件”需要安装。一个是m4,一个是autoconf,这两个是做什么的,我并不清楚。但是是需要的。安装方法如下:

# cd 文件下载目录
# wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
# tar -zxvf m4-1.4.9.tar.gz
# cd m4-1.4.9/
# ./configure --prefix=m4安装目录 && make && make install
# cd 文件下载目录
# wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
# tar -zxvf autoconf-2.62.tar.gz
# cd autoconf-2.62/
# ./configure --prefix=autoconf安装目录 && make && make install

  安装完毕后,还需要将这两个部件的bin目录之完整路径追加到.bash_profile中的PATH=后面,然后. .bash_profile使其生效,如此bin里面的可执行程序能够被直接访问。

  3.php安装目录下的bin目录之完整路径也要追加到.bash_profile中的PATH=后面,然后. .bash_profile使其生效。

  4.然后下载XHProf,并安装。方法如下:

# cd XHProf安装包所在目录
# tar xhprof-0.9.4.tgz
# cd xhprof-0.9.4/extension/
# phpize
# ./configure --with-php-config=PHP安装目录/bin/php-config
# make && make install

  如此就完成了安装。接下来是配置。

  5.打开php.ini文件。此文件应该从php安装包内拷贝到php安装目录下的lib目录里面。我使用的php版本为php-5.6.10,拷贝方法如下:

# cd PHP安装包目录
# cp php.ini-development PHP安装目录/lib/php.ini

  6.在php.ini文件末尾添加代码:

[xhprof]
extension=xhprof.so
xhprof.output_dir=日志存放目录

  因为我采用的是普通用户安装,因此日志存放目录需要设置成普通用户可写的目录。

  7.将XHProf安装包内的xhprof_html和xhprof_lib这两个文件夹拷贝到Apache服务器的默认文件目录,我这里是htdocs目录,然后重启Apache服务器,如此便完成了XHProf的配置。接下来是测试。

  8.使用XHProf自带的测试文件进行测试。该文件在:XHProf安装包目录/examples/sample.php,将examples文件夹直接拷贝到Apache服务器的默认文件目录,我这里是htdocs目录。将sample.php文件的最后的echo代码改为:

echo '<a href="/xhprof_html/index.php?run='.$run_id.'&source=xhprof_foo" target="_blank">count</a>'; 

   9.在浏览器中输入:http://服务器IP:端口号/examples/sample.php,以执行该文件。结果如图:

使用非root用户在RedHat 4下安装XHProf

  10.点击count,得到XHProf的分析结果。部分内容如图:

使用非root用户在RedHat 4下安装XHProf

  如此便完成了XHProf的安装、配置和测试。