【发布时间】:2013-02-27 02:28:13
【问题描述】:
我有 MySQL (5.5.23 Community Server)、Apache (2.2) 和 PHP (5.3.13) 在 Fedora 15 机器(64 位)上运行。每个都可以独立运行。
我认为 PHP 已配置/编译为与 MySQL 一起使用,但是当我尝试加载任何进行 MySQL 调用的 PHP 网页时,我收到上述致命错误(在 Apache 错误日志中)。 PHP 可以通过 Apache 和命令行自行运行。
当我从命令行运行 php -i 时,它确实显示了所有 MySQL 的点点滴滴,但是当我加载显示 phpinfo() 的页面时,没有提到任何 MySQL 模块。
我也尝试在 php.ini 中取消注释“extension=mysql.so”,但 PHP 然后抱怨“PHP 启动:无法加载动态库 '/usr/lib64/php/modules/mysql.so'."(即使模块确实驻留在那里)。但是我不完全确定该行是否需要取消注释。[更正:所述错误实际上是由于拼写错误,但从命令行运行显示模块已经加载 - 那里是来自 PHP 的警告。]
我还禁用了 SELinux;多次停止/重新启动 Apache; yummed MySQL-Devel,以防它有什么不同;而且,似乎,所有其他可能的事情。
如果我从命令行运行一个小的 PHP 测试脚本来访问 MySQL 数据库,那么它可以正常工作,所以 PHP 确实知道 MySQL,但是当它在 Apache 下运行时,它似乎不知道 MySQL甚至存在。
几个月来我一直在尝试解决这个问题,并且似乎已经尝试了所有方法,但似乎没有任何效果。
如果我真的必须重新安装 PHP,我不介意重新安装 PHP,如果有人可以演示使用 MySQL 支持配置/编译的正确方法,以便我可以让它在 Apache 下工作,尽管理想情况下我' d 只是更喜欢让现有的安装工作。
【问题讨论】:
-
您确定这是您需要的模块吗?
msql.so?尝试加载 pdo 模块怎么样? -
您可能需要修改两个 php.ini 文件。 /etc/php5/apache2/php.ini 和 /etc/php5/cli/php.ini.
-
也尝试加载 pdo,但得到相同的“无法加载动态库”错误。
-
不,系统上只有一个 php.ini 文件。我进行了系统范围的搜索。
-
投票重新打开,因为此问题的答案比重复问题的答案质量更高。