linux系统下php安装mbstring扩展的二种方法

  • Post category:Linux

在Linux系统下安装PHP并且使用其常用扩展是很常见的需求。其中,安装mbstring扩展则是其中的一个常见问题。下面分别介绍安装mbstring扩展的两种方法:

方法一:使用命令行安装扩展

以下示例以Ubuntu 20.04为例进行操作,其他Linux系统类似。

  1. 使用命令行安装PHP 7.4和mbstring扩展:
sudo apt install php7.4

sudo apt install php7.4-mbstring

注:php7.4-mbstring是mbstring扩展的包名。

  1. 修改php.ini配置文件,开启mbstring扩展:
sudo nano /etc/php/7.4/cli/php.ini

找到以下两行(一行中可能已经存在extension=mbstring.so):

;extension=mbstring
;extension=exif 

将其改为:

extension=mbstring
extension=exif 

保存并退出。

  1. 重启Apache或Nginx服务器:
sudo systemctl restart apache2

sudo systemctl restart nginx

方法二:手动编译安装扩展

以下示例以CentOS 7为例进行操作,其他Linux系统类似。

  1. 下载mbstring扩展源码包并解压:
wget https://www.php.net/distributions/php-7.4.24.tar.gz

tar -zxvf php-7.4.24.tar.gz
  1. 进入扩展源码包目录:
cd php-7.4.24/ext/mbstring/
  1. 执行以下命令以编译扩展:
phpize

./configure

make

sudo make install
  1. 修改php.ini配置文件,开启mbstring扩展:
sudo nano /etc/php.ini

找到以下两行(一行中可能已经存在extension=mbstring.so):

;extension=mbstring
; extension=exif

将其改为:

extension=mbstring.so
extension=exif.so

保存并退出。

  1. 重启Apache或Nginx服务器:
sudo systemctl restart httpd

sudo systemctl restart nginx

经过以上步骤,就可以在Linux系统下安装mbstring扩展了。

示例一:在CentOS 7上手动编译安装mbstring扩展

假设现在我们使用PHP 7.4.24,但是CentOS 7默认仅提供了PHP 5.4.16,因此需要手动编译安装。

  1. 安装PHP编译所需的依赖:
sudo yum install -y gcc gcc-c++ autoconf automake libtool libxml2-devel bzip2-devel libcurl-devel libpng-devel libjpeg-devel freetype-devel libmcrypt-devel openssl-devel make
  1. 下载mbstring扩展源码包并解压:
wget https://www.php.net/distributions/php-7.4.24.tar.gz

tar -zxvf php-7.4.24.tar.gz
  1. 进入扩展源码包目录:
cd php-7.4.24/ext/mbstring/
  1. 执行以下命令以编译扩展:
/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make

sudo make install
  1. 修改php.ini配置文件,开启mbstring扩展:
sudo nano /usr/local/php/etc/php.ini

找到以下两行(一行中可能已经存在extension=mbstring.so):

;extension=mbstring
;extension=exif 

将其改为:

extension=mbstring
extension=exif 

保存并退出。

  1. 重启Apache服务器:
sudo systemctl restart httpd

示例二:在Ubuntu 20.04上使用命令行安装mbstring扩展

Ubuntu 20.04已经默认提供了PHP 7.4,所以我们只需要使用命令行安装扩展即可。

  1. 使用命令行安装mbstring扩展:
sudo apt install php7.4-mbstring
  1. 修改php.ini配置文件,开启mbstring扩展:
sudo nano /etc/php/7.4/cli/php.ini

找到以下两行(一行中可能已经存在extension=mbstring.so):

;extension=mbstring
;extension=exif 

将其改为:

extension=mbstring
extension=exif 

保存并退出。

  1. 重启Apache或Nginx服务器:
sudo systemctl restart apache2

sudo systemctl restart nginx