Wake Me Up When September Ends.

A wanderer capable of grasping the beauty of the grass, with a heart full of ancient charm, and a fondness for playful wit. Those who understand my words are knowledgeable individuals; those who decipher my code truly comprehend the essence. I am a wandering code swordsman, carrying my skills and riding freely through the digital world.

Charles 官网 下载Charles,Debian系列发行版可以使用 apt-get install charles-proxy 安装,不过需要提前安装对应key才可以安装,我这边是直接下载安装包解压安装。

1.解压&安装

1
2
3
4
5
6
7
8
# 下载包具体以最新版本为准
tar -xvf charles-proxy-4.6.3_amd64.tar.gz

# 移动到程序安装目录
mv charles /opt/

# 检查一下 charles/bin/charles 是否具有执行权限没有需要`chmod u+x`

阅读全文 »

问题

因为部分老项目使用5.6版本且部分功能依赖zip扩展 ,所以在镜像(apline)构建安装zip扩展,安装过程中报如下错误:

1
Please reinstall the libzip distribution

解决办法

1
2
3
4
5
6
7
apk update 

apk add zlib-dev

pecl install zip // 或 docker-php-ext-install zip

docker-php-ext-enable zip

补充

可能还有其他问题,不过我本机可能只缺少这些依赖,所以安装成功了

问题

使用php8.1.11-apline镜像构建安装event扩展,构建一点流程没有发生任何错误,但是启动容器之后报如下错误:

1
2
3
4
Warning: PHP Startup: Unable to load dynamic library 'event' (tried: /usr/local/lib/php/extensions/no-debug-non-zts-20210902/event (/usr/local/lib/php/extensions/no-debug
-non-zts-20210902/event: cannot open shared object file: No such file or directory), /usr/local/lib/php/extensions/no-debug-non-zts-20210902/event.so (/usr/local/lib/php/
extensions/no-debug-non-zts-20210902/event.so: undefined symbol: socket_ce)) in Unknown on line 0

后来搜索一下得知是因为event与另外的sockets扩展启动顺序问题,sockets需在event之前启动!

解决办法

/usr/local/etc/php/conf.d/目录下的文件docker-php-ext-event.ini重命名为docker-php-ext-z-event.ini,让它排在 docker-php-ext-sockets.ini后面即可。

参考链接

php8 安装 event 扩展后报错