在使用我的Mac OSX(10.10)和MampPro(3.2.1)设置本地运行BlackFire.io时,我遇到了很大的困难。
我已经能够成功地遵循大部分指令,但是相信OSX的原生PHP / Apache安装是采用一些安装命令而不是我的MAMP配置。到目前为止,找不到任何与MAMP环境相关的文档。
有没有办法清楚地描述这两个,以便我可以确保BlackFire插件和配置指向我的MAMP安装?或者有没有办法删除OSX的PHP / Apache?
其他人在这种环境下成功运行并运行了吗?
答案 0 :(得分:14)
您必须在正确的文件夹(MAMP的PHP可执行文件所在的位置)中安装PHP探针。
运行php -i | grep 'extension_dir'
并从手动标签下的here下载探针。
之后,编辑php.ini(文件>编辑模板> PHP>您的PHP版本),并在文件末尾添加配置:
[blackfire]
;Replace the path with the path of the folder where you downloaded the probe
extension="/Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/blackfire-php-darwin_amd64-php-55.so"
; On Linux systems, uncomment the following line
;blackfire.agent_socket = unix:///var/run/blackfire/agent.sock
; On Mac OS X systems, uncomment the following line
blackfire.agent_socket = unix:///usr/local/var/run/blackfire-agent.sock
blackfire.agent_timeout = 0.25
; Log verbosity level (4: debug, 3: info, 2: warning, 1: error)
blackfire.log_level = 4
; Log file
blackfire.log_file = /tmp/blackfire.log
blackfire.server_id = YOUR_SERVER_ID
blackfire.server_token = YOUR_SERVER_TOKEN
答案 1 :(得分:0)
我能够按照他们对代理和CLI的说明进行操作,但必须手动让探针与MAMP一起使用。
以下是我使用MAMP 4.1和PHP 7.1在OSX 10.11.6上运行探针所做的工作:
从“安装PHP探测器”部分下的“手动”选项卡下的here下载相应的.so
扩展名文件。
运行which php
以查看命令行中的php
是否使用与MAMP相同的版本。如果是,请跳到#3。如果不是:
如果不是,您可能需要设置环境变量。有几种方法可以做到这一点。我通常只为我的用户这样做:
找出PHP MAMP正在使用的版本的路径。然后添加
export PATH=/Applications/MAMP/bin/php/php7.1.0/bin:$PATH
到~/.bashrc
,然后运行source ~/.bashrc
让更改生效。
如果which php
仍未指向MAMP的PHP,请考虑在继续之前搜索此解决方案。
将下载的blackfire.so
文件复制到PHP的扩展目录:
/Applications/MAMP/bin/php/php7.1.0/lib/php/extensions/no-debug-non-zts-20160303
(或类似)
找出PHP的ini与php --ini
的关系。它可能在/Applications/MAMP/bin/php/php7.1.0/conf/php.ini
更新php.ini
:
;Replace the path with the path of the folder where you downloaded the probe
extension="/Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/blackfire-php-darwin_amd64-php-55.so"
;Replace the path with the path of the folder where you downloaded the probe
extension="/Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/blackfire.so"
blackfire.agent_socket = unix:///usr/local/var/run/blackfire-agent.sock
blackfire.agent_timeout = 0.25
; Log verbosity level (4: debug, 3: info, 2: warning, 1: error)
blackfire.log_level = 4
; Log file
blackfire.log_file = /usr/local/var/log/blackfire/blackfire.log
blackfire.server_id = YOUR_SERVER_ID
blackfire.server_token = YOUR_SERVER_TOKEN
从this page部分获取服务器ID和令牌,该部分就在您下载.so
扩展程序的顶部。
重启Apache:sudo apachectl restart
。如果MAMP导致问题,您可能需要stop
和start
而不是restart
。
验证扩展程序是否存在且具有配置:php --ri blackfire
如果所有这些都奏效了,你现在应该好好去。