0

我正在尝试在 Vista (IIS 7) 上安装 Php。安装和配置似乎没问题。几乎遵循http://blogs.iis.net/bills/archive/2006/09/19/How-to-install-PHP-on-IIS7-_2800_RC1_2900_.aspx中提到的所有内容

我什至可以调出一个test.php,它基本上也可以通过代码连接到mysql db。但是,当我尝试调出其他一些 php 页面时,例如 drupal 的索引页面或 phpmyadmin 索引页面,它会显示一个 Php 访问冲突消息。

任何线索发生了什么?还有一些用于 php 的跟踪/诊断工具来跟踪网络服务器上发生的事情。

4

4 回答 4

3

在您的 PHP.INI 文件中,尝试注释所有扩展行并重新启动 IIS。请注意,MySql 将不再工作。做一些测试。

如果成功,请取消注释 mySql 行。做一些测试。

如果不成功,他们我帮不了你更多。我怀疑这是导致错误的加载扩展。你必须找到哪一个...

希望这可以帮助。

冰山

于 2008-09-30T18:57:30.307 回答
1

多谢你们。我禁用了所有扩展并开始一次添加一个,并且只添加我需要使用的那些(mysql、mbstring 等)。我还必须将 php.ini 复制到 System32 文件夹中(即使我在系统路径中有它)。瞧,它奏效了。

于 2008-10-01T13:40:16.317 回答
1

我假设您使用的是 PHP 5.2.6(最新版本)。我还假设您使用链接中的说明使用 ISAPI。

似乎有很多关于 IIS 上的 PHP 存在访问冲突的错误报告。

这里这里列表

到目前为止,我发现的唯一建议是尝试 FastCGI 而不是 ISAPI。

我从来不用调试 PHP 本身,我自己的脚本,但不是 PHP。有生成回溯和一些一般调试信息的说明。

编辑——在阅读了viceBerg的回答后,我记得另一个可能的原因是非线程安全的PHP扩展和IIS不喜欢对方。将它们全部禁用并一次启用它们可能是值得的,但只有当您可以获得一个脚本来始终导致该错误时它才真正有用。

如果没有一致的、可重现的错误,这将很难调试。

于 2008-09-30T19:01:19.797 回答
0

尝试将php自带的libmysql.dll移到windows\system32

于 2009-01-29T00:25:44.763 回答