在 Ubuntu xenial LTS 16.04 中安装和配置 LAMP + phpmyadmin

在 Ubuntu xenial LTS 16.04 中安装和配置 LAMP + phpmyadmin

我设法找到了一个带有 php5.6 的 PPA,但是当我从普通的 ubuntu 软件包安装 phpmyadmin 时,一切似乎都很好,直到我访问 0.0.0.0/phpmyadmin。它说:

The mbstring extension is missing. Please check your PHP configuration.

即使我已取消注释并重新启动了 apache2,我仍然收到此错误,这让我开始思考 phpmyadmin 是从哪个 php.ini 加载它的?可能是从我甚至没有的 PHP 7.1 安装开始的,所以我想问如何在 ubuntu 16.04 中为 PHP 5.6 安装 phpmyadmin,其中 PHP 5.6 不再出现在官方软件包中。

笔记这是使用 PHP 5.6 PPA 全新安装的 ubuntu-server 16.04.1 LTS

php 安装包列表:

root@*****:~# apt list --installed | grep php
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
libapache2-mod-php5.6/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed]
php-common/xenial,xenial,now 1:49+deb.sury.org~xenial+4 all [installed,automatic]
php-phpseclib/xenial,xenial,now 2.0.1-1build1 all [installed,automatic]
php5.6/xenial,xenial,now 5.6.29-1+deb.sury.org~xenial+1 all [installed]
php5.6-cli/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed]
php5.6-common/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed,automatic]
php5.6-json/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed,automatic]
php5.6-mbstring/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed]
php5.6-mcrypt/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed]
php5.6-mysql/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed]
php5.6-opcache/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed,automatic]
php5.6-readline/xenial,now 5.6.29-1+deb.sury.org~xenial+1 amd64 [installed,automatic]
phpmyadmin/xenial-updates,xenial-updates,now 4:4.5.4.1-2ubuntu2 all [installed]

答案1

1./etc/php/x.x/apache2/php.ini有一行;extension=php_mbstring.dll。在本例中,这只是一个例子。带.dll扩展名的文件是 Windows 的库。Ubuntu 的等效扩展名是.so-/etc/php/5.6/mods-available/mbstring.ini例如,请查看您的。

在 Ubuntu 中启用 PHP 模块的最简单方法是通过命令phpenmod。因此您需要:

sudo apt-get install php5.6-mbstring
sudo phpenmod mbstring 

2.要为 Apache2 启用 PHP 5.6,您需要:

  • 安装库:

    sudo apt install libapache2-mod-php5.6
    
  • 禁用php7.x模块:

    sudo a2dismod php7.0 && sudo a2dismod php7.1
    
  • 启用php5.6模块:

    sudo a2enmod php5.6
    

3.重新启动Apache2:

sudo systemctl restart apache2.service

4.检查你的 PHP 配置:

  • 在以下位置创建phpinfo.php文件/var/www/html/(如果这是您的 DocumentRoot 目录):

    echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php
    
  • 在您的网络浏览器中打开phpinfo.php并检查您当前的 PHP 配置:http://localhost/phpinfo.php

相关内容