不幸的是,我不得不在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?
您必须检查是否在PHP中安装了mysql扩展。
dpkg -l|grep php
然后您应该得到所有php包的列表。 检查mysql/mysqli是否有问题。 如果没有,您必须安装mysql/PDO包。
apt-get install php5-mysql
您使用的是一个非常老的PHP版本,它不再被维护。 所以你真的应该升级使用一个更新的。 那么您应该能够使用php脚本连接到数据库。