对于 ubuntu 18 和 20:
1-php -v
例如结果:PHP 7.4.10
2-sudo wget https://www.php.net/distributions/php-7.4.10.tar.gz
将 7.4.10 替换为您的 php 版本。
3-sudo tar xfz php-7.4.10.tar.gz && sudo rm -rf php-7.4.10.tar.gz
将 7.4.10 替换为您的 php 版本。
4-cd php-7.4.10/ext/pcntl/
将 7.4.10 替换为您的 php 版本。
5-sudo phpize
如果没有安装 phpize,你可以使用apt install php7.0-dev 安装它
6-sudo ./configure --with-php-config=/usr/bin/php-config
7-sudo make && sudo make install
结果必须像Installing shared extensions: /usr/lib/php/20190902/
8-cd ../../../ && sudo rm -rf php-7.4.10
将 7.4.10 替换为您的 php 版本。
9-cd /etc/php/7.4
用你的 php 版本替换 7.4。
10-sudo sh -c "echo 'extension=pcntl.so' > ./mods-available/pcntl.ini"
11- sudo nano ./cli/php.ini 然后添加 extension=pcntl。
为sudo nano ./apache2/php.ini 或sudo nano ./fpm/php.ini 重复这项工作。
12- 在以上所有php.ini 中有disable_functions 包括pcntl 前缀。你必须启用你想要的。
13- 重启你的 apache2 或 fpm:
sudo service apache2 restart
sudo service php7.4-fpm restart
用你的 php 版本替换 7.4。
14- 你可以在 test.php 中使用die(extension_loaded('pcntl')); 进行检查
注意:如果出现错误:PHP Warning: Module 'pcntl' already loaded in Unknown on line 0,请仅在 cli/php.ini 中删除 extension=pcntl