php xampp bug,PHP网站访问慢的处理方法
如果網站跑在了LAMP環境中,就無法使用php-fpm的slow log了,那如何分析瓶頸點?沒關系你還可以使用這個Xdebug+Webgrind,其中Xdebug是一個開放源代碼的PHP程序調試器(即一個Debug工具),可以用來跟蹤,調試和分析PHP程序的運行狀況。Webgrind是一個網頁版的性能分析工具,它的主要作用就是分析Xdebug生成的cachegrind文件,以一種界面友好詳盡的方式來展示性能數據。
Xdebug安裝
Xdebug官方網站:http://xdebug.org/.
1)下載源碼如果你用的PHP版本較高,建議下載最新版本
# wget https://xdebug.org/files/xdebug-2.7.0beta1.tgz
2)編譯安裝
# tar zxf xdebug-2.7.0beta1.tgz# cd xdebug-2.7.0beta1# /usr/local/php-fpm/bin/phpize# ./configure --with-php-config=/usr/local/php-fpm/bin/php-config# make && make install
3)配置
# vi /usr/local/php-fpm/etc/php.ini #在最后面增加
[xdebug]zend_extension=xdebug.soxdebug.trace_output_dir=/tmp/xdebugxdebug.profiler_output_dir = /tmp/xdebugxdebug.profiler_enable = 1xdebug.profiler_enable_trigger = 1
4)檢查
# /usr/local/php-fpm/bin/php -m |grep -C 1 Xdebug[Zend Modules]Xdebug
5)創建Xdebug目錄
# mkdir /tmp/xdebug# chmod 777 !$
6)重啟php-fpm或者apache服務因為修改了php.ini配置文件,需要重啟對應的服務,才可以生效,我這里用的是php-fpm
# /etc/init.d/php-fpm restart
Webgrind安裝
1)下載Webgrind官方github地址
https://github.com/jokkedk/webgrind
# wget https://codeload.github.com/jokkedk/webgrind/zip/v1.5.0# mv v1.5.0 webgrind-1.5.0.zip# unzip webgrind-1.5.0.zip
2)為Webgrind配置站點Webgrind其實是一個PHP網站程序,需要為其設置一個虛擬主機,我用的是LNMP環境,所以需要配置Nginx, 當然你也可以直接把webgrind程序目錄丟到一個站點內,通過二級目錄去訪問。下面是我的Nginx虛擬主機配置文件內容:
server {listen 80;server_name webgrind.aminglinux.cc;root /data/wwwroot/webgrind;index index.html index.htm index.php;location ~ \.php$ {fastcgi_pass 127.0.0.1:9001;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /data/wwwroot/webgrind$fastcgi_script_name;include fastcgi_params;}
3)配置webgrind假如新配置的虛擬主機目錄為/data/wwwroot/webgrind
# mv webgrind-1.5.0/* /data/wwwroot/webgrind/# vim config.php #修改$storeageDir和$profileDirstatic $storageDir = '/tmp/xdebug';static $profilerDir = '/tmp/xdebug';
4)性能追蹤首先訪問要追蹤性能的PHP網站,然后查看/tmp/xdebug目錄下是否生成文件
# ls /tmp/xdebug/cachegrind.out.11442 cachegrind.out.11443 cachegrind.out.11443.091dcb
我的已經生成3個文件,然后在瀏覽器訪問即可,不過需要你先選擇腳本文件(右上角),點擊update之后才會出現分析內容。
總結
以上是生活随笔為你收集整理的php xampp bug,PHP网站访问慢的处理方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 本机上的ajax需要跨域吗,jQuery
- 下一篇: java爬取button_学习使用Jav