在Windows Server 2003上通过五个简单步骤实现PHP5和IIS6

[更新:如果您正在寻找更新了Windows Server 2008上PHP5和IIS7的教程]

如何通过五个简单的步骤在Windows Server 2003上安装和配置带有IIS6的PHP5。

我认为安装PHP就像使用安装程序一样简单。嗯,这不是……但从我的错误中吸取教训,这几乎可以这么容易。

只要按照以下五个简单的步骤在运行IIS的Windows Server 2003上安装和配置PHP 5,在尝试了该手册和网上找到的几个指南和教程(其中一些很长很复杂,一些很短很容易,但部分不正确)之后,这就是最终的结果。尽情享受吧。

这在Windows Server 2003 SP1上的PHP 5.0.4和IIS6上进行了测试。请注意,并非所有版本的Windows Server 2003都会自动安装IIS,本指南假定IIS 6和Windows Server 2003已在服务器上启动并运行。

1.下载PHPhttp://www.php.net/downloads.php。请确保下载“zip包”,安装程序包将无法工作。

2.将下载的zip文件解压缩到硬盘上选择的目录中。本指南的其余部分将假设您使用的是C:\PHP

3.将C:\PHP添加到路径中。在“开始”菜单中,右键单击“我的电脑”,然后选择“属性”。从高级选项卡中,单击环境变量按钮。在系统变量下找到路径并单击编辑。在Variable Value中已有内容的末尾添加分号(;),然后添加C:\PHP。

4.配置IIS。从“管理工具”(可直接在“开始”菜单或“控制面板”中找到)中打开Internet信息服务(IIS)管理器

a) Web服务扩展。单击“Web Service Extension”文件夹。右键单击该文件夹并选择“添加新Web服务扩展”。将扩展名设置为。PHP并添加C:\PHP\PHP5ISAPI。所需文件的DLL。选中将扩展状态设置为允许。

b) 网站。单击“网站”。右键单击文件夹并选择属性。从主目录选项卡中,单击配置按钮。单击添加以添加应用程序扩展。输入C:\PHP\PHP5ISAPI。DLL作为可执行文件,PHP作为扩展。将其余部分保留为默认值,然后单击“确定”。

5.一切就绪!要测试PHP安装,只需创建一个带有PHP扩展名的文本文件,例如test.PHP。向其中添加以下三行文本,然后将其保存到网站目录,例如C:\INETPUB\WWWROOT。然后使用浏览器读取文件,例如。http://localhost/test.php

<?php(电话)
phpinfo();
?>

您可能需要考虑的其他事项:

–一些教程指出,在安装和配置php之后,您需要重新启动万维网发布服务。我不需要(即一切正常,没有重新启动服务),但如果你这样做,可以在控制面板的服务下找到。

–当您开始使用PHP时,在不久的将来,您可能需要对PHP.ini进行一些更改。PHP在没有PHP.ini文件的情况下工作正常,但您确实应该有一个,并且应该在Windows目录中。副本C:\PHP\PHP。INI-建议使用C:\WINDOWS\PHP。INI公司

–如果要使用MySQL,则需要确保取消注释php.ini中的行“extension=php_MySQL.dll”,并复制C:\php\LIBMYSQL。C:\WINDOWS\SYSTEM32的DLL(简单地设置PATH将无法工作,因为这显然是在PHP5中硬编码的)。如果不遵循这些步骤,您将收到类似以下的错误消息:“Call to undefined function mysql_connect”

–阅读手册http://www.php.net/manual/en/install.windows.php

[更新:如果你有任何问题,请务必阅读此帖子的评论。你会在那里找到提示和问题。如果你知道某人问题的答案,请回答。]

(这篇文章以前发表过,现在已经转到了这个博客)

231条评论

  1. 伙计,你做得很好!我考试了
    我在.asp中创建了一个网络商店,所以我不能将XAMMP用作我们网站通常使用的网络服务器。但是Web服务器也需要php支持,所以我开始在谷歌上搜索,找到了这个博客,它运行得很好!再次感谢!!

    荷兰的问候=)

  2. 嗯。。我只是想指出你的教程中的一个缺陷…
    您忘记让用户知道解压缩PHP zip文件,以便找到“php5isapi.dll”文件!!!

    哈哈,关于这个缺陷,这不是你的错,我是个弱智!!!

    非常感谢您花时间输入教程,我在网上尝试了许多其他教程,但都没有成功,您的教程确实是最简单、最好的…。
    再次谢谢你

  3. 该死…。。你的指南看起来很酷,我试图用它在我的IIS 6.0上安装PHP,但当我试图访问test.PHP文件时,却找不到一个页面

  4. 感谢大家的友好和积极反馈!

    关于“找不到页面”错误。从您的问题描述中很难说出为什么会出现这种情况,但在我看来,PHP安装似乎没有问题,而是您将test.PHP文件放在了其他地方,而不是您尝试访问它的地方,例如,您将其放在c:\inetpub\wwwroot\phptest\test.PHP中,但尝试使用http://localhost/test.php而不是http://localhost/phptest/test.php

    它也可能与权限相关,检查文件和目录的权限(只需右键单击并从Windows的资源管理器中选择文件和/或目录的属性)。祝你好运。

  5. 请确保下载“zip包”,安装程序包将无法工作

    如果它说:
    确保下载的是“zip包”,而不是安装程序包。这些说明适用于拉链包。(此外,安装程序包也有一些限制。)

  6. 六羟甲基三聚氰胺六甲醚。
    在WinServer 2003 SP1和IIS6上使用PHP 5.1.4和MySQL 5.0。

    有2个libmysql.dll文件。

    一个在php文件夹中(1.01 MB(1069056字节);2006年5月4日)。

    另一个在mySQL bin文件夹中(1.40 MB(1470464字节);2006年4月27日)

    那么……现在怎么办?
    这个文件**需要**在Windows文件夹中吗?
    首选哪个版本?

    另外,在这个框架上运行mediawiki(维基百科软件),一切似乎都很好。我的php测试文件也在运行。

  7. 对最后两条评论的回复:(每个人都在使用匿名者进行评论,所以很抱歉我不能指名道姓)

    我写“安装包不起作用”的原因是,当我尝试它时,它不起作用。把不起作用的东西称为“有限的”是针对政治家和软件巨头的😉
    也许他们已经修复了它,现在确实可以工作了,我不知道,因为自从我编写这些指令以来,我还没有尝试过安装PHP。如果有人知道,请发表评论。

    关于libmysql.dll问题的简短回答-对不起,我不知道。
    然而,我猜想使用的dll是PHP包中的dll,因为这是最新的(根据日期戳),所以我认为这是一件好事。

  8. 伟大的指示!

    但在WinServer 2003 SP1和IIS6上安装PHP 5.1.4、MySQL 5.0和mediawiki时遇到问题。我使用您的说明安装了PHP,测试效果很好。(我将libmysql.dll复制到windows/system32。)

    然而,当我url到我的mediawiki时,我收到消息“您无权查看此页面”。

    mediawiki安装说明说要将PHP扩展名设置为PHP-cgi.exe,而不是php5isapi.dll。

    关于使用什么或如何实现这一点,有什么想法吗?我知道我的问题远远超出了PHP,但我是PHP、MYSQL和wiki的新手,所以输了。

  9. 非常感谢。经过几次失败的尝试(好吧,如果他们成功了……),我找到了这些指令,它们运行得很好。在我的计算机上不需要重新启动或重新启动IIS。

  10. 谢谢,这是目前为止我在谷歌上找到的最容易的。。如何在iis 6上安装php,

    再次感谢…继续学习好的技巧/方法。。

  11. 谢谢你的帮助!
    我收到了404个错误,然后删除了所有内容并遵循了您的步骤(我已经完成了所有操作),但我还配置了一个php.ini–我认为文件中有些地方不正确。现在我的页面工作正常。

  12. 太酷了这些指示非常有效。在零时间内启动和运行。谢谢你的努力
    Steeleryno–医学博士Dundalk

  13. 你好,

    我收到404错误…

    我试了几次台阶。。但仍然会出现这个错误。

    请帮帮我。

    我使用的是W2k3服务器,IIS6,PHP 5.1.4

    基里

  14. 它非常有用。谢谢您!我还遇到了另一个问题。我放入控制台检查所有加载的模块:
    >php-h

    因此,它返回了一些错误“can't load mysql module”和“Missing MSVCR71.dll”。当我下载并安装MSVCR71.dll软件所有错误都消失了,amd模块开始完美加载。检查MSVCR71.dll是否位于“C:\WINDOWS\system”目录中。

  15. 我有这个问题。执行超时…。
    i;m使用windows XP,IIS 5.1和PHP 5.1.4版
    请帮忙。。

  16. 非常棒的教程。做得很好,一切都很清楚,解释得很好。

    感谢您花时间和精力帮助他人。

  17. 到加拿大,

    不——你应该得到很多(大约两页)关于PHP的信息。

    我是新手,但对于那些发现服务器未发现错误的人,请进入IE并关闭那些“友好错误”消息。你收到了难看的403.1等信息。

    我得到了一个关于执行脚本的403.1——确保您转到IIS网站属性中的“主目录”选项卡,并将“执行”权限设置为“脚本和可执行文件”。

  18. 感谢您的HowTo。它写得很好,信息丰富。在遵循这些步骤后,我遇到了一些问题,因为我之前已经采取了懒惰的方式,并且安装了这个自动安装程序。这配置了不同的ISAPI扩展。我将可执行文件的路径更改为C:\PHP\PHP5ISAPI。DLL,但IIS重启(我在Apache时代的习惯)将其更改回c:\PHP\PHP.exe。我又换了一次,一切都很好。

    谢谢!!
    果汁

  19. 好棒的文章伙计,在这个问题上我已经绞尽脑汁好几个小时了,这篇文章对我重新获得关注很有帮助。

    干杯!

  20. 先生,我和其他人一样感谢你

    然而,为了完整性和准确性,并记住像我这样没有经验的用户正在绝望地求助于您,您可以修改步骤4b,以明确输入的扩展名是“.PHP”而不是“PHP”,否则“确定”按钮将保持灰显状态

  21. 这太棒了,我花了一整天的时间在这上面,读了你的解释后,花了整整5分钟。谢谢!!

  22. 谢谢您!在找到你的指示之前,我花了几个小时试图让它工作。在不到10分钟的时间里,我的网站工作得很好!

  23. PHP新手,使用Windows XP Pro、Mysql、Apache 2.2和PHP。

    我收到403个“未授权”错误。在阅读这篇博客时,阅读了上面关于更改“友好错误消息”标志的注释。取消选择标记,现在正在尝试下载test.php。

    任何帮助都是非常有用的!!

  24. 我已经尝试了这篇文章中的所有内容以及我能找到的所有其他地方,但我仍然无法加载mySQL。PHP工作正常,phpinfo()返回正确的信息,mysQL.dll和libmysql.dll位于正确的位置,但我收到一个错误“无法加载mysQL扩展”。请帮帮我!

    我正在使用来自zip文件IIS6,W2003的PHP5。

  25. 在64位Windows上,万维网发布服务不支持在同一服务器上同时运行32位和64位工作进程

    哎呀。如果您还需要运行asp.net应用程序(或任何其他基于x64的应用程序!),请不要在x64服务器上尝试php。呃。

  26. 当我运行我的http://localhost/test.php

    它好像没有检测到我的c:\windows\php.ini!!!阿格,这太令人恼火了。

    我重启了电脑,重启了万维网发布服务,什么都没有!

    我正在跑步:
    win2k3 w/sp1,iis6,PHP 5.1.4

    有什么主意吗?!

    谢谢,
    鲁迪

    PS:我怎么“知道”它没有检测到我的php.ini?

    好吧,我打开“display_startup_errors=打开”

    当我重新启动电脑,然后重新启动WWWPS时,我的test.php页面显示“display_startup_errors”为关闭!

  27. 我也有页面无法显示的问题。如果我将网站设置为wwwroot文件夹下的目录或(专用)服务器上的任何其他文件夹,我会收到一个错误。直到我在wwwroot中有一个phpinfo页面并直接访问它,我才意识到IIS混淆了目录。

    我打开php.ini,发现根目录设置为wwwroot。我对此进行了评论(因为我将在服务器上运行多个网站),并且它起到了作用。

  28. 非常非常感谢!!!
    我花了几个星期的时间尝试不同的指令,但都失败了。
    你真的很棒!
    你的孩子会为你的所作所为感到骄傲。
    只是强调一个小调,但足以让我惊慌失措。请记住右键单击您的网站并选择“开始”选项。
    真高兴!耶!是的!是的!

    再一次

  29. 我听从了你的指示,这就是我的困境。不知道你能不能帮忙…

    我将所有站点都放在D驱动器上的inetpub目录中,因此test.php文件位于D:\inetpub\domainx.com\www\test.php(站点的根目录为www)。这台机器的默认网站仍然指向C:\inetpub\wwwroot。现在,当我试着提起http://www.domainx.com/test.php我得到页面找不到。我试过了http://localhost/test.php虽然文件不在localhost(默认站点)的根目录下,但它位于domainx.com.Weird的根目录中。PHP基本上只在默认网站和目录上工作,但从指定位置(domainx.com根目录)获取文件?我不知道发生了什么事,非常感谢您的帮助。

  30. 如果出现“找不到页面”错误,您可能需要验证。PHP扩展处理正确。您可以按照以下说明进行操作:

    单击“主目录”选项卡,然后单击“配置…”按钮。在Mappings选项卡上,找到PHP扩展。如果它不在那里,您可以通过单击添加按钮添加它。选择php5isapi.dll文件作为可执行文件(请注意,对话框中的文件类型过滤器默认情况下仅显示.exe文件),并在扩展名框中键入.php(包括.)。保持其他内容不变,然后单击“确定”。

  31. 真不错!简单的任务变得简单我发现在Windows Server 2003 SP1 IIS6上,我必须为IUSR帐户授予PHP文件夹的读取权限,以便web用户可以运行PHP5ISAPI,这可能值得一提。DLL–一切都很好!

  32. 帖子很好。除了当我试图从web浏览器访问PHP文档时,我得到了Authentication窗口之外,其他所有操作都很好。我在php目录、可执行文件和dll中添加了权限。其他人在Windows SBS 2003上有这个问题吗?

  33. 辉煌辉煌辉煌!!然而,我收到了一个错误,它说明了CGI行为不正常——我将IIS中CONFIGURATION下的PHP扩展更改为ISAPIDLL,现在一切正常。你是上帝!!

  34. 我使用了几个月前你的不成功的安装程序,当它工作时我非常高兴,可以说这个精简版本也工作得很好。干得好,继续努力。

  35. 有几个人被提示输入PHP页面的userid和pw。我遇到了同样的问题,并且有了解决方案。

    我正在Win2k服务器上工作,IIS中的PHP应用程序启用了“集成Windows身份验证”。我在PHP安装目录上授予IUSR“读取”、“执行”和“列出文件夹内容”权限。无论如何,它在Win2k工作站上运行良好。使用WinXP客户端访问PHP应用程序的用户会被提示输入用户名和密码。为了解决这个问题,我必须给PHP安装目录上的“Authenticated Users”组“read”、“execute”和“List folder contents”权限。

    我希望这能有所帮助。

  36. ERES UN PUTO GENIO!!!JAJAJA!!!
    很多人都很感激,因为这是一个充满活力的时代。感谢埃斯帕尼亚!!!

  37. 这些当然是悬崖笔记!很不错的。

    我能够在Windows 2k sp4和IIS 5上实现这一点。

    然而,我没有看到web服务扩展文件夹或如何配置它。可能是因为我没有配置像Frontpage这样的web服务扩展。

    无论如何。。非常感谢!

    jc在迈阿密
    jc_pineiro[at]雅虎[dot]合作

  38. 嗯…。
    根据您的指示成功安装后,我有理由停止然后重新启动web服务。从那以后,我一直无法运行PHP测试页面!!

    我重新启动了服务器,但还是出现了同样的问题:“页面无法显示”。

    有什么主意吗?

    请发送电子邮件至swhitney[网址]whitcom.com。

    谢谢您。

  39. 帖子不错。我想提几个建议。

    1) 作为对步骤3的修改:创建一个名为PHPRC的新系统变量,并将其值设置为“C:\PHP\”

    这将允许您直接在C:\php\中创建php.ini,并避免处理C:\WINDOWS\目录的混乱。

    2) 您还可以将任何所需的DLL(如LIBMYSQL.DLL)放在C:\PHP\目录中(而不是放在C:\ WINDOWS\SYSTEM32中)。要启用此功能,只需修改php.ini中的一行:“extension_dir=”C:\php\“

    这有助于保持IMO的整洁,也使权限更容易。通过这种方式,您可以在php文件夹上设置一次权限,然后就可以使用它了!

  40. 您好!

    很棒的教程。

    不过,我想补充一点。

    我遇到了很多问题,在尝试打开test.php时一直收到以下错误消息

    ==================================
    您无权查看此页面
    由于Web服务器上为此资源配置的访问控制列表(ACL),您没有查看此目录或页面的权限。

    HTTP错误401.3–未授权:由于请求的资源上设置了ACL,访问被拒绝。
    Internet信息服务(IIS)
    ==================================

    我有点放弃让ISAPI工作,直到我看到你必须给IUSR_(systemname)PHP文件夹的读取权限。
    嗯,那不管用
    直到我进入文件夹安全权限的高级部分,并告诉系统替换所有子对象的权限条目。

    这使得整个问题消失了。也许你应该把这个作为旁注添加到你的教程中。🙂

    无论如何,谢谢!!!

    问候ZzZz

  41. 感谢您的所有反馈、提示和问题!我只是更新了这篇文章,以确保人们不会忘记查看评论,这些评论似乎包含了一些常见问题的解决方案。

    只是想让你知道为什么我不尝试在这里回答很多问题——我只是不知道这些问题的答案。我不再使用php。几年前,当我(有点困难)安装php时,我写了这个指南。然后我用php做了两个项目,但从那以后,除了一些维护之外,我没有真正接触过它。

    并不是我不喜欢php,而是目前我在asp.net/vb.net中做大多数项目,我想我只是觉得专注于一个开发工具比较容易。

  42. 我正在使用WinXP和IIS5,希望安装PHP5.1。我无法单击IIS中“应用程序配置”的映射选项卡中的“确定”,它已灰显。我想选择“C:\PHP\PHP-cgi.exe”和扩展名“PHP”。

  43. 我也用你的指令加载了Windows Media Edition。除了web服务之外,其他一切都是相关的。感谢您为我节省了打印和阅读安装说明的时间!
    -忍者

  44. 非常感谢!在我读了你的教程之前,这里有很多令人头疼的事情。Web服务扩展做到了!

  45. 在安装php5.1+和mysql5.0+之后,服务器会在一个小时内自动关闭……我正在使用带有MS-SQL2000的Windowsserver2003。我不知道启动服务是否有冲突。以前有人有过这个问题吗?谢谢

  46. 这是一个很好的指南!

    给其他像我这样的PHP新手一个提示:如果在尝试加载PHP页面时出现Service Unavailable(503.x)错误,请确保PHP目录位于Windows PATH环境变量中,并且您已经重新启动服务器以使更改生效。

    干杯,
    最大。

  47. 非常容易遵循的指导…找到这些简单的指令比实现它们花费的时间更长…如果所有的教程都这么简单就好了!谢谢!

  48. 在使用本教程后,我的整个服务器都瘫痪了,什么也没用,出现了一个404错误,然后在将其更改为将“执行”权限设置为“脚本”和“可执行文件”后,出现了403/403.2错误页面。

    本教程是sh*t!!

  49. 这个教程很有魅力,现在我必须安装MYSQL。感谢您的帮助,PHP指令省略了几个步骤。

    -达伦
    旧金山

  50. 我实际上处于启动状态…
    请帮帮我。。
    我已经安装了php…
    现在我用.php保存了一个文件,其中包含包含在php标记中的html标记…
    我无法查看我的页面内容……我只查看一个空白页面……如果我删除html标记,我会看到网页中的php代码……请告诉我我的问题并尝试纠正…。。

  51. 非常感谢!

    这里有一些评论:

    你的步骤顺序很重要!我成功地安装了几台机器,但昨天我在一台机器上输了,后来我发现我先设置了步骤4.b,然后设置了步骤4.a,这很奇怪,但可能对我这样的人有用。

  52. 尊敬的先生:,
    我是鲁西,印尼大学计算机科学专业的学生。目前,我正在实习,并使用PHP 5.0.5、IIS 5.1和MSSQL Server开发基于web的应用程序。

    我的系统可以在我的电脑和笔记本上顺利运行。但当我尝试在这家公司的生产服务器上部署时,我的系统无法完美运行。这家公司也使用PHP 5.0.5、MSSQL Server,但他们使用的是Win Sever 2003和IIS 6。

    有一些功能不起作用,那就是使用会话的功能。我无法进行“登录”等操作。这是由不同的IIS设置引起的还是您有什么想法?有一些注意事项,如未定义的索引和未定义的偏移。请帮帮我。那里的管理员也不知道。

  53. 我只想精确地说明一切。本教程适用于WIN2K3,但在WIN2K3SP1中不适用。如果有任何机构可以验证这一点。我已经做了测试,我不明白为什么它不起作用。我真的很傻。

  54. 最后两条评论中的匿名者:

    你好,

    正如帖子中所述,这是在win 2003 sp1上测试的,所以至少在我编写教程时,它是有效的。

  55. 优秀的向导。在网上使用了其他指南后,我本来打算放弃,但这成功了。在最初尝试查看test.php时,我确实遇到了401.3错误,但通过为C:\php目录的IUSER_MACHINENAME提供具有可继承权限的读取访问权限,问题得到了解决。谢谢!!!

  56. 不要忘记更改网站的属性以允许脚本运行–使用IIS>要在其上启用PHP的网站>Properties>Home Dir>Execute Permissions=scripts only

  57. 这是一个非常好的教程,对Windows上的系统管理新手很有用。

    我确实看到一些人问过如何让PHP在x64体系结构上工作,甚至有人说这是不可能的。我自己也一直在做这方面的工作,不过您可能会考虑将这些内容添加到x64架构的帖子中…

    –它可以在x64系统上运行PHP,但必须更新x64。执行以下操作后安装NET Framework 2.0
    –打开cmd.exe窗口,导航到Inetpub\Adminscripts目录
    –在以下行中键入:

    adsutil.vbs设置W3SVC/AppPools/Enable32bitAppOnWin64 1

    –这将告诉IIS在x86兼容模式下运行,再次使您的ASP。NET ISAPI筛选器暂时无法启动。只需运行的更新即可。NET Framework 2.0,它将在其中抛出32位版本

    此外,我有一个相当高级的问题要问你,这个问题困扰了我很长一段时间。使用Windows Server 2003 R2和MySQL 5.0.x上的IIS 6.0,我还不能让PHP连接到MySQL数据库。我总是收到“无法创建TCP/IP套接字”错误。我尝试过添加PATH变量,移动mysql库,在mysql中启用命名管道,但都无济于事。我真的很绝望,所以如果你有空闲时间,愿意帮我,请发邮件告诉我[电子邮件保护]。提前谢谢,我希望x64附加功能可以帮助某些人。

  58. 感谢您抽出时间发布您的体验。不幸的是,这个方法对我不起作用。我甚至尝试将php5sapi.dll复制到system32文件夹中。

    也许这句话可以帮助其他人。我使用了php-5.2.0-win32安装程序.msi而且效果很好。但是,必须在IIS管理器->网站->属性->ISAPI筛选器下添加筛选器名称“php”和可执行文件“C:\php\php5isapi.dll”。

    此外,我喜欢使用不同的扩展来运行PHP脚本(只是为了让他们保持猜测)。您可以通过在IIS管理器->网站->属性->主目录->配置->映射->应用程序扩展下添加要使用的扩展名(例如:“.jon”)来实现这一点。只需输入扩展名并将其指向“C:\PHP\php5isapi.dll”(假设您在C:\PHP下安装了PHP)。如果它试图告诉您可执行文件已经被.php使用,只需关闭窗口,它就会执行。

    我希望这对某人有所帮助。

  59. 如果有人在Windows的Apache/IIS上收到错误“cannot load mysql extension”,只需将“libmysql.dll”复制到system32目录(例如“C:\Windows\system2”)。🙂

  60. :(我得到了关于执行脚本的403.1条
    我做了一些事情,页面工作了,但页面是空白的。你能帮帮我吗?我一直在捶着头,想让这个工作好多年:(

  61. 我的Windows Server 2003需要一些帮助。我最近刚安装了SP1,在自动重启后,它会显示移动条,但从未让我登录。然后它会一遍又一遍地重新启动。有没有办法卸载它并恢复我以前的设置?此外,没有安装系统还原。我的电子邮件是[电子邮件保护].

  62. 我的Windows Server 2003需要一些帮助。我最近刚安装了SP1,在自动重启后,它会显示移动条,但从未让我登录。然后它一次又一次地重新启动。有没有办法卸载它并恢复我以前的设置?此外,没有安装系统还原。我的电子邮件是[电子邮件保护].

  63. 步骤4 Web服务扩展

    现在这个web服务扩展在哪里?

    我正在Windows Xp Professional上使用IIS 5.1

  64. 你是一个救生员!我当时正在IIS6上安装MediaWiki(基于PHP和MySQL)。wiki设置无法连接到MySQL。最后,看到了您关于将libmysql.dll添加到C:\Windows目录的说明,它成功了吗!!!!!!谢谢您!!!!

  65. Kaaa-ching!你做到了,伙计!我有一个旧的Windows2000服务器,在那里我安装了PHP5.2.1(安装包),一切都很好,但几天后我们重新启动了服务器…PHP死了…
    然后我转到了Windows 2003服务器,认为旧服务器上的IIS不正常,但同样的事情也发生了——工作正常,然后重新启动服务器,没有PHP…
    然后我找到了你的这个很棒的教程,我卸载了PHP并按照你的指示操作……起初它不起作用,我在运行PHP脚本时收到“500个内部服务器错误”消息,所以我开始研究它。我做的第一件事是重新启动IIS。同样的错误。然后我在wwwroot中构建了一个phpinfo()文件,运行得很好!在那之后,我再次检查我的脚本,现在它就像一个魔力!真的希望下次重启后也能如此。。🙂

  66. 我收到HTTP错误401.5–未授权:ISAPI/CGI应用程序授权失败。
    Internet信息服务(IIS)

    密码提示出错,我已经尝试了上面列出的所有权限更改,但都无效。

    如果我输入管理员用户的密码,iis将运行常规html页面和php页面。。

  67. 非常感谢你的指导。我花了最近几天的时间寻找一个真正能正常工作的。

    看来你救了我一命。

    继续努力!

  68. 对于Windows,此工作区对我很有用:

    确保已将C:\Program Files\MySQL\MySQL Server 5.0\bin\libmySQL.dll复制到C:\windows\system32\

    不要将C:\PHP\libmysql.dll转换为C:\windows\system32\

  69. 感谢您的手册,但由于某种原因,当我试图打开测试PHP文件时,收到“服务不可用”错误。你知道为什么吗?再次感谢。

  70. 谢谢您!谢谢您!谢谢您!你发这个帖子给我省了很多时间和头痛!

    啪的一声。信息

  71. 坚持,坚持,坚持……你真的帮了我一把,让我努力摆脱困境。

    伊斯坦布尔哈尔斯宁格尔

  72. 更新:
    对于所有出现PAGE NOT FOUND/404错误的人,您需要执行以下步骤:
    在IIS管理器中,右键单击网站本身(而不是所述的文件夹),选择属性、主目录选项卡、配置,然后在那里添加php扩展。这应该可以解决问题。如果没有,也将PHP(php5isapi.dll)添加到属性中的ISAPI过滤器选项卡。

  73. 谢谢,

    之前曾尝试过这种方法,并放弃了在2003年环境中使用php的想法。你的指示很有帮助

    阿德里安,利默里克,爱尔兰

  74. 非常感谢–请注意,在使用Windows 2003 SP2时,必须先执行前面提到的步骤,然后才能加载PHP页面:

    单击主目录选项卡,然后单击配置…按钮。在Mappings选项卡上,找到PHP扩展。如果它不在那里,您可以通过单击添加按钮添加它。选择php5isapi.dll文件作为可执行文件(请注意,对话框中的文件类型过滤器默认设置为仅显示.exe文件),并在扩展名框中键入.php(包括.)。保持其他内容不变,然后单击“确定”

  75. 对于SBS 2003来说,这也是正确的。我花了一天的大部分时间在处理404和500个错误。

    但必须遵循以下额外步骤:

    单击主目录选项卡,然后单击配置…按钮。在Mappings选项卡上,找到PHP扩展。如果它不在那里,您可以通过单击添加按钮添加它。选择php5isapi.dll文件作为可执行文件(请注意,对话框中的文件类型过滤器默认设置为仅显示.exe文件),并在扩展名框中键入.php(包括.)。保持所有其他内容不变,然后单击“确定”

  76. 截至2007年8月15日,msi安装程序对我不起作用。我按照这些指示进行了跑步。谢谢!布莱恩·L

  77. 很好的教程,谢谢你的努力。然而,我仍然有一个问题,当我尝试运行php页面时,我得到了授权窗口来连接到我的服务器!!知道为什么吗?我做了所有的事,但这对我不起作用🙁
    提前感谢你的帮助

  78. 谢谢!!
    我觉得你很棒,伙计。我只是按照你的5个步骤,在我的windows服务器2003 64上成功地安装了php-5.2.3,谢谢你,我没有流汗。
    我现在要安装MySql,希望能在我的计算机上使用SQL server 2000。
    干杯

    西澳大利亚州

  79. 大家好,

    我之所以发布这篇文章,是因为我花了太长时间来解决这个本不应该成为问题的问题。

    我在IIS 6.0上安装了PHP,并使用了所有默认设置。每个站点的扩展映射的默认路径为D:\PROGRA~1\PHP\PHP5IS~1.DLL。我一直收到404个错误,但我无法理解。结果是IIS没有解析路径D:\PROGRA~1\PHP\PHP5IS~1.DLL,所以我必须手动浏览该文件以获得“D:\Program Files\PHP\php5isapi.DLL”(如果路径有空格,则需要引号)。

    这让我抓狂,希望能解决很多人的问题

  80. 太棒了!
    网络上没有一个esle提到phpmysql.dll的位置被硬编码,做得好,解决了我的问题

  81. 我想感谢您在MaximumASP.com的双xeon服务器上轻松安装PHP。有很多DOTNET应用程序在那里,我很担心如果安装失败,我会删除现有的站点。你的这篇教程不仅让它变得简单,我现在还可以利用PHP中编写得很好的flash库,也许还能学习一种新语言。

    加拿大的干杯
    😉

  82. 对于404问题。遵循此博客的说明后:

    IIS>Web服务扩展>所有未知的ISAPI扩展[将其更改为ALLOWED]

    如果您使用windows安装包,它也可以工作。

  83. 你摇滚。

    非常感谢您的宝贵建议。

    我收到一个404错误:找不到文件。

    在本例中,它不接受wwwroot目录中的.php文件。

    我“允许”了“所有未知的ISAPI扩展”,它工作了,但如果我禁止它,访问就会停止。

    因此,我转到IIS中的网站-主目录-配置,然后将扩展名指向正确目录“c:\program files\php5isapi.dll”中的文件(需要引号),它开始工作。

    我想我也会转机。

    干杯

  84. 精彩的文章——在花了几个小时对在IIS6上安装PHP的windows安装程序和其他指南越来越失望之后,我现在有了一个功能齐全的系统。非常非常感谢。

  85. 我实际上遵循了http://www.php.net/manual/en/install.windows.iis.php
    我喜欢将所有与PHP相关的文件保存在c:\PHP中。
    我使用“远程桌面连接”在我们的专用服务器上安装了PHP 5.2.4版。我收到一条“404文件未找到”消息。我刚刚删除了php.ini文件,一切都开始工作了。所以不要在一开始就使用php.inis来确保它正常工作。在php.ini注释“doc_root”行中。这是错误消息404 File Not Found的来源。

  86. 我没有谷歌帐户,所以这必须是匿名的。我按照这些说明操作,得到了一个500服务器错误。我重启了,重启了一切。我不知道还能尝试什么。任何建议都非常感谢。

  87. 嗨,我叫尼克。我对你所说的有一个问题,当我更改路径时,我做了一次服务器重置,在我无法获取服务器的任何部分frew-ftp、mail、teamspeak、远程桌面之后,我不得不让我用m8进入服务器,自己将bk更改为aridginale路径

    希望听到您对此的询问

  88. Tnx用于手册,除了我必须向PHP文件夹的“网络服务”用户添加读取权限。此用户是在包含网站的应用程序池的标识选项卡中配置的用户。我还必须选中高级安全设置屏幕中的“替换权限”复选框来重置所有持久性。

  89. 谢谢你的帮助。我刚安装了php,但在php.ini文件中找不到“extension=php_mysql.dll”。那么如果我使用Mysql,会有什么问题吗??
    再次感谢你

  90. AAAAAAA HHHHH HHH…。。php可以安装……检查文件权限。花了两天时间试图找出为什么php不能与IIS一起工作,但asp会……(非授权错误)。确保REPLACE对php文件夹的所有现有权限,以使其正常工作。

  91. 谢谢!你当然知道你为世界做了一件好事!!!再次感谢,它在PHP 5.2.5中非常适合我。

  92. 这太棒了……我在网上找不到任何东西来帮助PHP5.2在IIS6上工作,但它在遵循说明之后就可以工作了。

  93. 我完成了这些步骤,但仍然面临一个问题。我在win2003上运行了PHP 5.0.5。我卸载了它,正在安装PHP5.2.5。我将所有内容都放在c:\php中,并配置了路径IIS-ISAPI,并在环境变量和注册表中设置了PHPRC配置。

    但当我跑步时http://www.webkriti.com/clickbank/phpinfo.php

    我得到了一个黑页,在查看源代码时可以看到php代码–

    phpinfo();

    这可能意味着IIS正在显示php文件,但没有执行它。我会在哪里出错。

    印度阿里吉特

  94. 做得很好,谢谢!!!

    在反复使用PHP4.4.4安装程序(为了与现有服务器兼容)并获得权限错误后,我决定安装最新的PHP并找到了您的说明——它刚刚开始工作!!亲吻,真的…。

  95. Tjitjing您在win srv 2003中安装php的说明运行得很好,非常清楚,切中要害。我最深切的感谢。
    伊乌里。

  96. 令人惊叹的!我使用了PHP 5.2.5安装程序,但它没有工作(像往常一样)。我按照您的说明删除/添加了安装程序添加的所有内容,然后它就工作了!我认为问题是安装程序将dll放在C:\Program Files\PHP中,当添加到主目录->配置中时,安装程序使用缩短的文件名以防止使用空格,我将其替换为“C:\ProgramFiles\PHP\php5isapi.dll”(包括QUOTES),它工作正常!

    再次感谢您的提示!

  97. 很好,但是,一切都很好,但最后在我的test.php中,我得到了“对内存位置的无效访问”。有线索吗?试着用谷歌搜索,我发现php配置错误?!?或者…

  98. 这些说明很好。我还找到了一个关于这方面的视频教程,也很有帮助。

    您可以在以下位置查看本教程:http://www.videotutorialzone.com视频名称为:

    在Windows 2003和IIS6上安装PHP5

    这基本上就是你在视频教程中读到的内容。

    我希望这能帮助像我这样的人,让视频变得更容易。

    斯科特

  99. 你好,
    向你致敬,伙计!已经在我的iis6和服务器2003上运行了php!!!令人惊讶的简单教程(考虑到甚至没有截图!!!)
    如果我能在这里添加的唯一一件事是,可能值得右键单击网站文件夹,选择documents选项卡,并添加index.php作为默认文档。
    这将使iis能够自动向客户端提供它在目录中遇到的第一个index.php文件。

    上帝保佑你!

  100. 我想说这是一个很棒的教程。我注意到一些关于“无法显示或发现页面错误”的帖子。我最初也有同样的问题;然而,我的问题通过将PHP扩展添加到我要运行PHP的特定网站上得到了解决。最初我将扩展添加到所有网站,但由于某些原因,我的网站没有继承。

    谢谢。

  101. 有人对用InsPanel替换2k3服务器iis 6上的php和mysql有什么建议吗?似乎所有文件都必须位于InsPanel目录中,这样才能正常运行。不幸的是,由于我试图安装这两个版本,现在没有任何基于php的工作。

  102. 在使用复杂的教程与PHP进行了几天的斗争之后,我发现了在WindowsServer2003(SBS)上使用这种简单的1-2-3方法。在遵循这一点到T之后,MySQL 4.1就直接加载到了中,并在没有任何其他配置的情况下进行连接。

    在下面的帖子丢失太远之前,我只想评论一下教程中的一个问题:

    我引用Dave的话——
    “能否修改步骤4b,明确输入的扩展名是”.PHP“而不是”PHP“,否则“确定”按钮保持灰色?”

    万分感谢Max Flodén🙂

  103. 我在服务器上多次(但不是全部)尝试访问WP/PHP时,都出现了访问违规。我已经发布过了在这里在这里.

    我很乐意听到任何可能有价值的建议。

    詹姆斯

  104. 固定的。

    PHP4的一些东西把事情搞砸了。当我仔细检查并删除了与PHP4相关的任何内容后,我发现了另一个更容易修复的错误(将扩展路径从./ext更改为c:/php5/ext)。

    现在它看起来功能齐全。

  105. 呜呜呜呜!我在墙上把头撞了三天,没能让这玩意儿发挥作用。最后是一个分五步完成的教程。

  106. 我看过许多在windows服务器中加载PHP5的教程。所有这些都差不多,但我会将PECL添加到您的中,此注册步骤来自http://www.peterguy.com网站:

    这样PHP就可以找到它的配置文件(PHP.ini)。为了方便您,请修改以下文本,使“C:\\PHP”成为您解压缩PHP的文件夹,然后复制文本并粘贴到新的文本文件中(任何位置;桌面是创建它的好地方)。将该文件重命名为inifilepath.reg,然后双击它,在确认对话框中单击“Yes”,值就会出现。然后可以删除inifilepath.reg。
    确保在.reg文件中转义了所有反斜杠(即\\而不仅仅是\)

    Windows注册表编辑器5.00版[HKEY_LOCAL_MACHINE\SOFTWARE\PHP]“IniFilePath”=“C:\\PHP”

    注意:PHP还使用其他设置来查找其配置文件;其中最值得注意的是PHPRC环境变量。我更喜欢使用Registry,因为通过改变键,可以配置不同版本的PHP在同一台机器上并行运行。请参见http://us2.php.net/配置了解更多信息。

    我真的很想知道是否有人能在windows服务器上正常运行mime_magic。

  107. 对于那些出现404错误(可能还有其他问题)的人来说,我(Win2K3Server)的问题是安装程序包(他说msi不起作用)使用“%System Drive%/Program Files/PHP”作为默认安装位置,然后使用windows速记在步骤4.b中注册dll。如果您只需浏览到完整位置并在选择isapi dll后将其括在引号中,那么一切似乎都很好。

  108. 另外一个步骤对我的安装至关重要:

    在IIS管理器中,右键单击网站文件夹并选择“属性”

    在“主目录”选项卡上,选择“配置”按钮

    在应用程序扩展列表中,需要添加.php:

    –选择“添加”
    –浏览并选择php5isapi.dll文件
    –输入.php作为扩展名
    –对所有窗口选择“确定”。
    –注意:您可能需要或不需要重新启动网站

    这假设您已经完成了本教程中所述的所有其他内容。

    祝你好运!

  109. 谢谢你的来信,
    我只是有一个问题,当我试图打开test.php页面时,浏览器会询问我是要打开还是保存文件。

    有什么主意吗?

    谢谢,
    托里

  110. 谢谢,谢谢,谢谢

    它工作得很好。您可能还想提到,在安装和/或编辑php.ini之后,需要转到命令提示符并执行“iisreset”。这将重新启动服务器并使用新的ini设置加载PHP。

  111. 有一个问题。作为测试,我想先在我的工作站上安装这个。运行带有IIS6的Windows XP。不过,这听起来应该很好。你知道会不会?此外,我已经在这台机器上安装了开发人员版本的ColdFusion MX7服务器。这会引起任何冲突吗?最后,一旦我安装了PHP,你能为安装MySQL提供一些好的指导吗?谢谢,WCW

  112. 嘿,非常感谢你提供了一个简单的教程。在尝试正确设置后,我发现了这一点,但您的教程让我摆脱了IIS/CGI路径,它显然不太安全,而进入了IIS/ISAPI路径,现在它设置得很好……并且工作正常!

    顺便说一句,我使用了5.2.6版安装程序(msi),它非常直观。现在它会自动处理您提到的大部分内容……如果您发现某些扩展无法正常工作,可以再次运行安装程序进行“修复”,并且在安装/修复完成后重新启动服务器也很有帮助。

    再次感谢!

  113. 伙计,干得好,有清晰完美的指示。
    设置进行得很顺利。
    非常感谢!!!
    谢谢……一吨🙂

  114. ı已经关注你的写作很长一段时间了。最后你给出了非常成功的信息。
    尽管有我的英语剧团,我仍在努力阅读和理解你的作品。
    我经常关注。我希望你能和更多的朋友们在一起。
    我希望你的成功能继续下去。

  115. TQ非常。。你的步骤很简单,我设法在几分钟内解决了我的问题

    我一天来一直在试图解决这个问题。。一旦我找到了你的教程,它真的帮了我很多

    TQ又一次,真的

    当做,
    朱利安纳
    马来西亚

  116. 我想也许应该修改一下。您需要包括来自的信息
    armedmetalica公司
    “我得到了一个关于执行脚本的403.1,请确保转到IIS网站属性中的“主目录”选项卡,并将“执行”权限设置为“脚本和可执行文件”。”
    除此之外:
    我还得到了用于访问此页面的HTTP谓词是不允许的。
    通过转到“home directory”选项卡并单击“configuration”,我修复了这个问题,然后添加了php扩展,其中包含指向phpisapi dll的路径,一切正常。

  117. 谢谢你。为什么所有其他网站都让你这么难理解?这很简单。你让我在5分钟内跑完。非常感谢!

  118. 谢谢您!我根据无用的信息进行了多次尝试,直到我偶然发现了你的页面。做得很好。再次感谢您。

  119. 它奏效了!几天来一直在尝试修复这个问题。这些是迄今为止网络上最简单的说明,非常容易阅读。为什么有些人必须把事情弄得如此复杂,而事实并非如此!谢谢您!

  120. 很好的向导!但我使用的是postgresql,并在php.ini文件中启用了一些扩展,但我看到的消息与我读过的消息相同,但它是“调用未定义的函数pg_connect”。

    如果有人,我应该将哪个.dll文件复制到system32文件夹?

  121. 啊。

    不要像我一样是一个dum-@ss。在尝试测试之前,请确保在disable_functions中注释掉“phpinfo”条目。
    以下为:/

  122. 令人敬畏的指示。我用它们为我目前工作的公司配置了一台新的IIS机器。必须用PHP 5.2.9.9配置IIS,同时支持MySql和MSSQL,正如你所想象的那样,这是一场完全的安装和配置灾难。我还设法安装了PHPmyAdmin来管理安装在同一台机器上的MySql服务器。经过一天的来回移动一些dll文件(在c:\php、c:\php\ext和c:\windows\system32中),以及对php.ini文件进行一些修改(取消注释扩展名等),我终于使其正常工作了。这些说明真的帮了我一把。现在我要做的就是记录安装和配置的每一步,对于这里的管理员来说,他们没有安装和配置这样一个奇怪的W2k3 Web服务器的经验。谢谢你的帖子。

    来自荷兰的问候语。

  123. 谢谢,我几乎放弃了,而你的小费是我最不想尝试的。我成功了。再次感谢!

  124. 我的win 2003 web服务器是用PHP 5.2.6配置的。这个版本有一些漏洞,我希望升级到最新版本。谁能告诉我如何升级吗。提前谢谢。

  125. 很棒的文章。与此斗争,并想分享…
    错误404找不到页面–在IIS 6.0、PHP、Windows 2003、FastCGI上安装MediaWiki
    我在解决“404找不到页面”错误时遇到了一些问题
    分辨率
    IIS虚拟目录配置:在主目录选项卡上,单击配置并添加php的应用程序扩展映射。对于FastCGI,条目必须是“.php”和“C:\WINDOWS\system32\inetsrv\fcgiext.dll”,否则使用C:\php\php5isapi.dll。
    我的fcgiext.ini版本的[Types]部分不正确…应该是(在安装时验证php路径)

    [类型]
    php=php

    [菲律宾语]
    ExePath=C:\PHP\PHP-cgi.exe
    InstanceMaxRequests=10000
    活动超时=600
    请求超时=600
    环境变量=PHP_FCGI_MAX_REQUESTS:10000,PHPRC:\PHP\

  126. сбематакитсераанонеоткреаетоенктртннphpмобтееТеиекарнаоумнтимеуттуаини?

  127. 完全同意布雷特之前的帖子……你的指示太棒了。只需5个简单的步骤。像你一样,我发现很多网站都有说明,但都有“问题”或是被过分恭维(和恐吓)。完成了5个步骤,在不到15分钟的时间内就完成了。谢谢您!!!!

  128. 这是最简单的,也是唯一一个同时有效的方法。祝贺 你。ASP真的很差劲,在我看来,它是一块死肉,php是最好的选择。我花了95美元为ASP购买了一个jmail组件,所以我可以使用我的花哨的flash联系人表单,PHP是免费的、快速的、稳定的,这就是我要走的路。

  129. 我有一个问题…。我使用php-5.2.10和windows 2003服务器
    在我按照说明运行包含以下内容的文件之后,结果与我预期的一样,但在更改php.ini的配置并重新启动IIS之后。我无法再运行包含我可以清空的视图的文件…。。请帮帮我……

  130. 感谢大家的支持——除了我没有将php文本添加到我的默认网站之外,其他都设置正确了。

    所以谢谢你为我节省了很多时间!

  131. 如果要将PHP版本4替换为版本5,则应重命名旧的c:\PHP文件夹,然后创建一个新的c:\hp文件夹以将zip文件解压缩到其中。在IIS中,您必须将.php web服务扩展名从c:\php\php.exe更改为c:\php\php5isapi.dll。PATH变量应该已经包含c:\php。您还必须更改IIS属性(主目录…配置…映射,并将php.exe更改为php5isapi.dll。

  132. 现在工作。。嘟嘟!应将编辑php.ini-recommendation添加到php.ini,可能还应添加一些有关文件夹权限的信息。。除此之外,谢谢你的啧啧!!

  133. 你好。看到这样一个旧的线程仍然处于活动状态是很有趣的。变化不大。在IIS上安装PHP并不容易。

    这本指南很好,虽然我看不到在任何我认为您需要的地方设置NTFS权限的错误,但您需要将php添加到应用程序池的部分解释得很简单,但在正式安装中有点模糊。txt在将C:\php添加到PATH后,您不需要重新启动吗?

    另外,PHP附带的install.txt并没有解释ISAPI不再受支持(这就是为什么文件不在Zip容器中),所以当您阅读它以获取帮助时,请跳过ISAPI部分。如前几篇文章所述。使用FastCGI。

    当你从php.net下载Windows二进制文件时,它并没有解释线程安全和非线程安全的区别——为什么你甚至需要非线程安全?

    只有我的2美分。

    指南Tnx🙂

  134. 所有的密码都已经安装好了,看起来很正常,但是任何php页面都会要求输入密码。我输入的所有密码都不起作用。你能帮我吗
    尊敬的derek

  135. 真的谢谢亲爱的,我从心底里真的在寻找配置php服务器的最简单方法,1000谢谢…!来自俾路支斯坦的阿里。

  136. 我找不到php5isipi.dll文件,只是找不到一个php5.dll文件。我做错了什么?此外,虽然我可以在浏览器中读取文件,但将路径放在本地主机映射中不起作用…。。我真的很困惑!

  137. 您需要访问museum.php.net以获取旧版本。PHP 5.3及以上的当前版本中没有php5isapi.dll文件。您可以在5.2.17或更低版本中找到它们。他们希望您使用php-win.exe或php-cgi.exe来处理本地计算机上的php处理。

    希望这能帮助任何正在进行当前构建的人。

    谨致问候,
    文件

  138. 你好!你知道他们是否制作了插件来帮助你吗
    使用搜索引擎优化?我正试图让我的博客排名一些有针对性的关键字,但
    我没有看到很好的收益。如果你知道任何,请分享。
    荣誉!

留下评论

您的电子邮件地址将不会被公布。 已标记必填字段*