Home  >  Article  >  PHP Framework  >  LNMP deployment laravel and xhprof installation and use

LNMP deployment laravel and xhprof installation and use

藏色散人
藏色散人forward
2019-10-31 14:21:202365browse

整个过程部署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规则
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/index.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

$ 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的路径
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';

(推荐学习:laravel开发

The above is the detailed content of LNMP deployment laravel and xhprof installation and use. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:segmentfault.com. If there is any infringement, please contact admin@php.cn delete
Previous article:Does laravel charge?Next article:Does laravel charge?