php访问冲突

时间:2008-09-30 18:18:47

标签: php drupal administration

我正在尝试在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。但是当我尝试调出一些像drupal的索引页面或phpmyadmin索引页面这样的其他php页面时,它会显示一条Php访问冲突消息。

有什么线索发生了什么?还有一些跟踪/诊断工具的PHP跟踪网络服务器上的whatign。

4 个答案:

答案 0 :(得分:3)

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

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

如果它不成功,我会帮助你。我怀疑这是一个加载的扩展导致错误。你必须找到哪一个......

希望这有帮助。

vIceBerg

答案 1 :(得分:1)

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

在IIS上,似乎有很多关于访问违规的错误报告。

Hereherelist

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

我从来没有乱用调试PHP本身,我自己的cource脚本,但不是PHP。有generating a backtrace和一些general debugging info的说明。

编辑 - 在阅读了ViceBerg的回答后,我记得另一个可能的原因是非线程安全的PHP扩展和IIS不喜欢彼此。将它们全部禁用并一次启用它们可能是值得的,但是如果你能得到一个脚本来一致地引起错误,它才真正有用。

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

答案 2 :(得分:1)

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

答案 3 :(得分:0)

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