当前位置:网站首页>Mac version PHP installed Xdebug environment (M1 version)
Mac version PHP installed Xdebug environment (M1 version)
2022-07-07 05:52:00 【ARCHER359】
The author depends on the environment
1.php7.4
2.macOS 12
3.apache2
4.xdebug3.1.4
5.phpstorm
php7.4 install
brew install php7.4
Remember to put... After installation brew The automatic update software is off , Or the next new version php7.4 May lead to xdebug reinstall
apache2 install ( As if mac Bring their own , I did it again )
brew install apache2
Author default web root /opt/homebrew/var/www Profile directory /opt/homebrew/etc/httpd
xdebug install
Go to the official website to download the latest xdebug
After downloading, we came to php Of bin Catalog , I am here /opt/homebrew/Cellar/[email protected]/7.4.29/bin And then execute sudo ./pecl install xdebug( Just downloaded xdebug Compressed package ), The official is to use arch -arm64 sudo pecl install xdebug Command installation failed here .
After compiling, if there is a warning of missing some directories , And no xdebug.so Words , Just create the missing directory and remember to give permission , Then recompile to generate xdebug.so, After successful compilation, enter php -m Command to see if the installation is successful .
The key is coming.
modify php.ini And add the following .
[xdebug]
zend_extension ="/opt/homebrew/Cellar/[email protected]/7.4.29/pecl/20190902/xdebug.so"; Modify the directory according to yourself
xdebug.idekey="PHPSTORM"
xdebug.client_host=localhost
; port ID,phpstorm The settings must be consistent
xdebug.client_port=9003
; Turn on xdebug Support , Different mode Different uses of , See the official documentation for details
xdebug.mode = debug ; If multiple modes are to be turned on together , Just use `,` Just separate it
xdebug.profiler_append = 0
xdebug.profiler_output_name = cachegrind.out.%p
xdebug.start_with_request = default|yes|no|trigger ; It's different here , It turns out that if you want to open trace or profile, It's using enable_trace,enable_profile Etc
xdebug.trigger_value=StartProfileForMe ; Here is the original profile_trigger_value,trace_trigger_value
xdebug.output_dir = /tmp ; Output file path , Turned out to be output_profiler_dir,trace_dir Set separately , Now use this setting uniformly
Verify that the configuration was successful
phpstorm To configure
Put it in advance php Good configuration , And then start debug To configure
1. Create a server
2. Set up Dgbp agent , Want to be with php.ini The configuration is the same .
3. Modify debug port , Want to be with php.ini equally
4. Create a php web page , Select the server we created in the first step , Click verify to check our debugging configuration .
Environmental testing
After turning on the small phone , We came to the browser , Good configuration xdebug plug-in unit , Turn on httpd.
sudo brew services start httpd
You can see the beginning of success debug .
Possible problems in the future
1.httpd Don't parse php
modify httpd.conf Add a row , According to oneself php Installation directory modification
LoadModule php7_module /opt/homebrew/Cellar/[email protected]/7.4.29/lib/httpd/modules/libphp7.so
If not, add another line AddType application/x-httpd-php .php try
2. No, php environment variable
Just edit this file , Then restart a terminal .
边栏推荐
- 得物客服一站式工作台卡顿优化之路
- Flask1.1.4 werkzeug1.0.1 source code analysis: start the process
- 2pc of distributed transaction solution
- 微信小程序蓝牙连接硬件设备并进行通讯,小程序蓝牙因距离异常断开自动重连,js实现crc校验位
- 【Shell】清理nohup.out文件
- Nvisual network visualization
- Question 102: sequence traversal of binary tree
- C nullable type
- Opensergo is about to release v1alpha1, which will enrich the service governance capabilities of the full link heterogeneous architecture
- [reading of the paper] a multi branch hybrid transformer network for channel terminal cell segmentation
猜你喜欢
Harmonyos practice - Introduction to development, analysis of atomized services
AI face editor makes Lena smile
《HarmonyOS实战—入门到开发,浅析原子化服务》
话说SQLyog欺骗了我!
Three level menu data implementation, nested three-level menu data
软件测试面试技巧
毕业之后才知道的——知网查重原理以及降重举例
Lombok plug-in
Web architecture design process
How to improve website weight
随机推荐
消息队列:消息积压如何处理?
数字IC面试总结(大厂面试经验分享)
[reading of the paper] a multi branch hybrid transformer network for channel terminal cell segmentation
async / await
高级程序员必知必会,一文详解MySQL主从同步原理,推荐收藏
盘点国内有哪些EDA公司?
如何提高网站权重
Win configuration PM2 boot auto start node project
Mysql-centos7 install MySQL through yum
力扣102题:二叉树的层序遍历
Go 語言的 Context 詳解
[paper reading] semi supervised left atrium segmentation with mutual consistency training
Three level menu data implementation, nested three-level menu data
Reading notes of Clickhouse principle analysis and Application Practice (6)
目标检测中的BBox 回归损失函数-L2,smooth L1,IoU,GIoU,DIoU,CIoU,Focal-EIoU,Alpha-IoU,SIoU
Web authentication API compatible version information
How to improve website weight
"Multimodal" concept
软件测试面试技巧
Flinksql read / write PgSQL