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

边栏推荐
- How to get free traffic in pinduoduo new store and what links need to be optimized in order to effectively improve the free traffic in the store
- 分布式事务解决方案之TCC
- 线性回归
- 谈fpga和asic的区别
- C#可空类型
- What are the common message queues?
- Reptile exercises (III)
- Forkjoin is the most comprehensive and detailed explanation (from principle design to use diagram)
- Red Hat安装内核头文件
- English grammar_ Noun possessive
猜你喜欢

Cve-2021-3156 vulnerability recurrence notes

随机生成session_id

AI face editor makes Lena smile

力扣102题:二叉树的层序遍历

Forkjoin is the most comprehensive and detailed explanation (from principle design to use diagram)

What is message queuing?

TCC of distributed transaction solutions

404 not found service cannot be reached in SAP WebService test

Reading notes of Clickhouse principle analysis and Application Practice (6)

分布式全局ID生成方案
随机推荐
Senior programmers must know and master. This article explains in detail the principle of MySQL master-slave synchronization, and recommends collecting
高级程序员必知必会,一文详解MySQL主从同步原理,推荐收藏
Ten stages of becoming a Senior IC Design Engineer. What stage are you in now?
Red Hat安装内核头文件
TCC of distributed transaction solutions
[reading of the paper] a multi branch hybrid transformer network for channel terminal cell segmentation
What EDA companies are there in China?
Harmonyos practice - Introduction to development, analysis of atomized services
软件测试面试技巧
Message queue: how to handle repeated messages?
980. 不同路径 III DFS
集群、分布式、微服务的区别和介绍
Industrial Finance 3.0: financial technology of "dredging blood vessels"
How much do you know about clothing ERP?
分布式事务介绍
驱动开发中platform设备驱动架构详解
AI人脸编辑让Lena微笑
话说SQLyog欺骗了我!
2pc of distributed transaction solution
Reading the paper [sensor enlarged egocentric video captioning with dynamic modal attention]