IIS 上的 PHP、MySQL - 提供页面时未加载 MySQL

标签 php mysql iis wimp

我已尽我所能在 Windows Server 2003 上设置 IIS (6.0)、PHP (5.2.8) 和 MySQL (5.1.30),所有相关的(我认为)都在 IIS 中和 PHP 让事物相互对话。

PHP 确实有效 - 但是,我无法从 PHP 页面使用 mysql 或 mysqli 库。 fatal error :在...中找不到类“mysqli”
fatal error :在...中调用未定义的函数 mysql_connect()

在 PHP 页面中使用 phpinfo() 时不会出现与 MySQL 或 MySQLi 相关的信息。

但是,当我从命令行调用 PHP 时,例如

> php -r phpinfo()

与 MySQL 和 MySQLi 相关的信息确实出现在输出中。

重新启动 IIS 或操作系统不会产生进一步的影响。我只有一个 php.ini 文件,在 PHP 根目录中。

我是否也需要以某种方式将 MySQL 连接到 IIS,还是存在其他问题?

最佳答案

用于 PHP 命令行使用的 php.ini 文件可能与 Web 服务器使用的 php.ini 不同。您应该通过将一个小的 PHP 脚本放在您的 Web 服务器的文档空间下来获取 phpinfo() 信息:

<?php
phpinfo();
?>

打开此 PHP 脚本,方法是使用您的浏览器通过 URL 向您的 Web 服务器请求该 PHP 脚本。这将告诉您 Web 服务器认为您的 PHP 配置是什么。

另请记住,您需要重新启动网络服务器才能使对 php.ini 的编辑生效。它仅在 Web 服务器启动时读取 php.ini。

您的 IIS 实例正在使用的 php.ini 文件可能存在于许多地方。参见 http://php.net/manual/en/configuration.phphttp://www.iis-aid.com/articles/how_to_guides/where_php_ini_is_loaded_from了解详情。

在浏览器中查看 phpinfo() 的输出,并查找“Loaded Configuration File”项。

关于IIS 上的 PHP、MySQL - 提供页面时未加载 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/361621/

相关文章:

php - 如何静态分析 php 脚本以检测全局变量的使用

javascript - SQL 查询插入值并显示,无需重新加载页面

php - 根据发送时间使用 AJAX 脚本检索聊天消息

导入时出现 MySQL 语法错误

php - 如果 PHP 中的数据库的 foreach 循环没有返回任何行怎么办?

php - 如何对表单中的不安全内容进行转义以防止XSS?

php - 默认 php.ini macOs Catalina

c# - 如何判断代码是否在本地从 Visual Studio/Cassini 运行

asp.net - 对于单个应用程序池,应该允许运行多少个工作进程?

iis - 如何在 % { dir IIS :\AppPools\$_. Name } 中创建一个 For..Each 值?