【问题标题】:Trying to get a LAMP configuration with PHP7 on a Jessie server尝试在 Jessie 服务器上使用 PHP7 获取 LAMP 配置
【发布时间】:2016-04-24 18:14:25
【问题描述】:

我正在尝试使用能够运行完整 LAMP 环境的 Jessie 安装配置我的新服务器,并使用 phpmyadmin。

Apache、MySQL、PHP
我用apt-get安装了apache2和mysql。

sudo apt-get install apache2 mysql

然后我按照这里的说明安装了 PHP7:https://www.dotdeb.org/2016/01/08/php-7-0-2-for-jessie/

sudo nano /etc/apt/sources.list

deb http://packages.dotdeb.org jessie all
deb-src http://packages.dotdeb.org jessie all

wget https://www.dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg
sudo apt-get update
sudo apt-get install php7.0 php-mysql

其中安装了mysql的php7包:php7.0-mysql php-mysql

PhpMyAdmin
现在我遇到了 phpmyadmin 的问题。
找到here,我克隆了 phpmyadmin git:

cd /var/www/phpmyadmin
git clone --depth=1 --branch=STABLE https://github.com/phpmyadmin/phpmyadmin.git
mkdir logs

然后我为它做了一个虚拟主机。

nano /etc/apache2/phpmyadmin.conf

<VirtualHost *:80>
     ServerAdmin myemail@domain.com
     ServerName phpmyadmin.url
     DocumentRoot /var/www/phpmyadmin/
     ErrorLog /var/www/phpmyadmin/logs/error.log
     CustomLog /var/www/phpmyadmin/logs/access.log combined
</VirtualHost>

--“一切顺利”部分结束--

问题
尝试访问 phpmyadmin 以消息结尾:

缺少 mysqli 扩展。请检查您的 PHP 配置。 有关详细信息,请参阅我们的文档。

我在 php.ini(位于 /etc/php/7.0/apache2)中发现 Windows 扩展“extension=php_mysqli.dll”的行已注释,但显然,取消注释并没有改变任何内容。

我被困在这里,我找不到有关使用 php7 安装 mysqli 的信息。
目前不可能吗?
有没有办法告诉 phpmyadmin 使用另一种方式(如果有的话)?

我记得我在运行 php5 环境时必须安装很多包,我很惊讶使用 php7 更容易。我猜现在很多包都不见了。
欢迎任何建议/建议。

(我会在找到更多说明后完成“一切顺利”部分)

感谢您的帮助!

【问题讨论】:

  • 请您公开您的解决方案!
  • 什么解决方案?你要我暴露哪一部分?除非我误解了你的问题(英语不是我的母语),否则我还没有工作环境,所以目前还没有解决方案。
  • 我的错误。我不明白你的问题。我也有同样的问题。
  • 您确定您的 Apache 实例使用的 PHP 版本与您安装的版本相同吗?检查phpinfo(); 看看是否有MySQLi
  • 那么,你是这样安装 PHP 的吗? sudo add-apt-repository ppa:ondrej/phpsudo apt-get updatesudo apt-get install php7.0sudo apt-get install php7.0-mysql

标签: php mysqli phpmyadmin lamp


【解决方案1】:

Mysqli 已正确安装(在 phpinfo() 数据中可见)。问题来自 PhpMyAdmin。我尝试像这样设置 PMA:

cd /var/www/phpmyadmin
sudo mkdir config
sudo cp config.sample.inc.php config/config.inc.php
sudo chown -R www-data:www-data config/
chmod -R 655 config/

它可能没有优化,但我只是在粘贴我的 bash 历史记录,我处于“我不确定我在做什么,让我们试试这个”的状态。

然后我启动了带有安装后缀的 PMA:pmaurl.ext/setup
我认为我没有修改任何内容,但是在我忘记检查 PMA 是否有效之后。 今天是这样,并要求我删除配置目录。

耶!问题解决了!

【讨论】:

  • 抱歉,这没有任何意义。我很高兴它现在对你有用,但是在这一系列步骤中,你没有做任何会改变 phpMyAdmin 工作方式的事情。 phpMyAdmin 本身不使用 config 目录,只有可以帮助创建或修改 config.inc.php 的设置脚本 - 然后您需要手动移动它以供 phpMyAdmin 使用(作为安全功能)。此外,无论如何,这对 PHP 配置没有影响——所以虽然我真的很高兴它现在对你有用,但我很确定解决方案是独立于这些步骤的。
  • 我知道这没有多大意义。我几乎开始认为来自 PMA 的错误消息是不恰当的,并且由于 PHP7 环境而导致某些行为不像往常一样。我还认为设置过程修复了导致错误的某些内容,因此之后立即请求删除配置目录。不过,这纯粹是猜测。
  • 以后我一定会留意类似的问题!谢谢。
猜你喜欢
  • 1970-01-01
  • 2016-05-03
  • 2013-09-19
  • 2019-04-17
  • 2017-01-26
  • 2015-06-05
  • 2014-09-19
  • 1970-01-01
  • 2020-03-25
相关资源
最近更新 更多