提问者:小点点

php 5.3/MySQL:为什么apache看不到MySQL?


不幸的是,我不得不在Ubuntu14.04上安装PHP5.3.29,Apache和MySQL,事实证明,让它们一起工作比我预期的要困难得多。

我尝试了这个线程,并安装了PHP5.3.29。

$ php -v
PHP 5.3.29 (cli) (built: Jun 16 2020 04:00:04) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies

我安装了Apache:

$ apache2 -v
Server version: Apache/2.4.7 (Ubuntu)
Server built:   Apr  3 2019 18:04:25

还安装了MySQL:

$ mysql --version
mysql  Ver 14.14 Distrib 5.5.62, for debian-linux-gnu (x86_64) using readline 6.3

看起来这些都按预期安装了,但是当我创建一个phpinfo()脚本并查看页面时,它正确地显示了PHP的版本,但是没有MySQL的详细信息。

当尝试访问使用MySQL的页面时,我得到错误Fatal error:Call to undefined function mysql_connect()

由于某种原因,Apache似乎没有看到MySQL,但它似乎正在加载模块。

这就是我在重启Apache时看到的情况:

*正在重新启动web服务器apache2[Thu Jun 18 05:31:41.808127 2020][SO:warn][pid 121446]AH01574:模块php5_module已加载,跳过AH00558:apache2:无法使用127.0.1.1可靠地确定服务器的完全限定域名。 全局设置“ServerName”指令以取消显示此消息

我需要做什么才能让Apache“看到”MySQL?


共1个答案

匿名用户

您必须检查是否在PHP中安装了mysql扩展。

dpkg -l|grep php

然后您应该得到所有php包的列表。 检查mysql/mysqli是否有问题。 如果没有,您必须安装mysql/PDO包。

apt-get install php5-mysql

您使用的是一个非常老的PHP版本,它不再被维护。 所以你真的应该升级使用一个更新的。 那么您应该能够使用php脚本连接到数据库。