前言 本文是介绍了关于整个过程部署laravel与xhprof安装的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 前提成功安装了LNMP集成环境 (lnmp.org 即可快速安装),保证network正常运行
首先配置laravel的运行环境
1.上传代码到/home/wwwroot/default/
2.修改nginx配置文件的root以及rewrite配置
root 配置为自己的访问路径
引入pathinfo 配置,注释掉include enable-php.conf
include enable-php-pathinfo.conf;
添加rewrite规则
代码语言:javascript复制location / {
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php/$1 last;
break;
}
}
location ~ /index.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/inde/【php教程_linux常用命令_网络运维技术】/x.php;
include fastcgi_params;
fastcgi_param APPLICATION_ENV dev;
}
3.修改权限
对laravel项目修改storage和vendor为777不能775
$ chmod -R 777 storage vendor
4.laravel指定的public下,需要防跨目录
LNMP 1.4上如果不想用防跨目录或者修改.user.ini的防跨目录的目录还需要将
/usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在该行行前添加 # 或删除改行,需要重启nginx。
5.数据库操作(可省略根据自己情况操作数据)
赋予外部所有权限
GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
然后写入数据库等信息
安装配置xhprof
1.下载安装xhprof
代码语言:javascript复制$ cd /home/wwwroot/default
$ wget http://pecl.php.net/get/xhprof-0.9.4.tgz
$ tar -zxvf xhprof-0.9.4.tgz xhprof
$ mv xhprof-0.9.4 /【当下浏览的服务器和开发工具是哪些】/xhprof
$ cd xhprof
$ cd extension/
$ phpize
$ ./configure --with-php-config=/usr/local/php/bin/php-config --enable-xhprof #更近自己的php安装来配置
$ make
$ sudo make install
2.修改php.ini
添加到最后
[xhprof] extension=xhprof.so xhprof.output_dir=/tmp/xhprof
在tmp下新建xhprof,同时赋予读写权限
$ cd /tmp && mkdir xhprof $ chmod -R 777 xhprof
3.安装 graphviz
$ cd && yum -y install graphviz
4.添加一个vhost(举个栗子:www.xhproftest.com)
更近个人情况配置如不知道,https://lnmp.org/faq/lnmp-vhost-add-howto.html#user.ini教程安装
$ lnmp vhost add
修改/usr/local/nginx/conf/vhost/www.xhproftest.com.conf配置文件,将nginx.conf的server复制修改端口好以及访问路径和server_name。
重启启动Nginx
laravel项目中配置xhprof
启动 xhprof 性能分析器
xhprof_enable(XHPROF_FLAGS_NO_BUILTINS | XHPROF_FLAGS_CPU | XHPROF_FLAGS_MEMORY);
需要测试的内容
foo();
停止 xhprof 性能分析器
$xhprofData = xhprof_disable();
根据自己安装的xhprof写require的路径
代码语言:javascript复制require '/home/wwwroot/xhprof/xhprof_lib/utils/xhprof_lib.php';
require '/home/wwwroot/xhprof/xhprof_lib/utils/xhprof_runs.php';
$xhprofRuns = new XHProfRuns_Default();
$runId = $xhprofRuns->save_run($xhprofData, 'xhprof_test');
echo 'http://localhost/xhprof/xhprof_html/index.php?;run=' . $runId . '&source=xhprof_test';