当前位置:网站首页>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 .

边栏推荐
- 什么是消息队列?
- make makefile cmake qmake都是什么,有什么区别?
- Question 102: sequence traversal of binary tree
- mac版php装xdebug环境(m1版)
- Paper reading [MM21 pre training for video understanding challenge:video captioning with pre training techniqu]
- 分布式事务解决方案之2PC
- 往图片添加椒盐噪声或高斯噪声
- Paper reading [open book video captioning with retrieve copy generate network]
- Flask1.1.4 Werkzeug1.0.1 源码分析:启动流程
- R语言【逻辑控制】【数学运算】
猜你喜欢

Web Authentication API兼容版本信息
![Paper reading [semantic tag enlarged xlnv model for video captioning]](/img/e3/633f6aac7a51ad7b3dc0e45dbe1f60.png)
Paper reading [semantic tag enlarged xlnv model for video captioning]

分布式全局ID生成方案

数字IC面试总结(大厂面试经验分享)
![[paper reading] semi supervised left atrium segmentation with mutual consistency training](/img/d6/e6db0d76e81e49a83a30f8c1832f09.png)
[paper reading] semi supervised left atrium segmentation with mutual consistency training

爬虫练习题(三)

Get the way to optimize the one-stop worktable of customer service

Pytorch builds neural network to predict temperature

Différenciation et introduction des services groupés, distribués et microservices

Harmonyos practice - Introduction to development, analysis of atomized services
随机推荐
Educational Codeforces Round 22 B. The Golden Age
Type de texte de commutation d'entrée et de mot de passe de l'applet natif
往图片添加椒盐噪声或高斯噪声
EMMC print cqhci: timeout for tag 10 prompt analysis and solution
On the difference between FPGA and ASIC
集群、分布式、微服务的区别和介绍
Common skills and understanding of SQL optimization
Go 語言的 Context 詳解
What is message queuing?
Why does the data center need a set of infrastructure visual management system
R语言【逻辑控制】【数学运算】
PowerPivot——DAX(函数)
Message queuing: how to ensure that messages are not lost
如何提高网站权重
Realize GDB remote debugging function between different network segments
Go language context explanation
The 2022 China low / no code Market Research and model selection evaluation report was released
2pc of distributed transaction solution
ForkJoin最全详解(从原理设计到使用图解)
原生小程序 之 input切換 text與password類型