经过一整天的搜索和尝试之后,在安装 XAMP 之类的东西之前,我想知道为什么以下内容对我不起作用,以防有人知道:
条件:Windows 7 (64)、Microsoft VC (2005/2008/2010/2012)。
目的:在本地机器上安装一个网络服务器来执行 PHP 脚本。
过程:
1)嗯,首先我下载了需要Microsoft VC11的 win64 的二进制 apache 2.4。然后我编辑了 conf 文件并安装了 apache,一切都很好,我可以看到页面 http:/localhost 返回“It works”。好的。
2)然后我去安装PHP。win64 没有任何稳定的官方版本。好吧,我下载了VC11 x86 Thread Safe并使用“php -i”从 cmd 安装它。它似乎也很好,因为它通过键入“php.exe -f path-to-file”在控制台中工作。php.ini 是默认设置。
3)这就是我的麻烦开始的地方。我必须集成 apache 和 php。根据 php.net,有 3 种常用方法可以做到这一点:cgi、fastcgi 和 handler。我选择了最后一个 - 作为处理程序,在 httpd.conf 的末尾添加该内容:
LoadModule php5_module "c:/myAdr/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "c:/myAdr"
然后我无法重新启动网络服务器。出现以下消息:
httpd: Syntax error on line 530 of c:/myAdr/apache/conf/httpd.conf: Cannot load c:/myAdr/php/php5apache2_4.dll into server: 1% \xed \xe5 ... win32
正如你已经假设它没有工作。本地主机仍然显示“它可以工作”(即没有重新启动的 apache 工作),但它仍然不执行 php :( 我已经完成了。配置文件中是否有特殊/附加行我应该取消注释或添加?
简短回顾:在安装 apache&php 之前,我已经安装了正确的 Microsoft VC,禁用了 Windows 的 IIS 组件(否则会出现关于端口 80 的常见错误,Apache 无法使用它,因为它被 IIS 和其他东西使用)。Apache 和 php 的 VC 版本(在我的情况下为 VC11)一致(例如,另一个常见问题是使用基于 VC6 的 apache 和基于 VC9 的 php)。我总是在我的电脑上处于管理员之下。根据给 apache 的路径,文件 php5apache2_4.dll 位于 php 文件夹中。我也在这里看到了一些类似的主题,但是这些建议对我没有用,或者,可能我只是不明白该怎么做:(
到目前为止,我有两个问题:
- 我一般做错了什么?
- 有没有人最终解决了这个问题?如果是的话,我想,很多人都想知道如何详细。
更新!终于我成功了!问题(既未加载也未找到文件php5apache2_4.dll时的错误)包括版本不兼容,即我的操作系统是 win7(64),而我的 apache 是为 win64 设计的(httpd-2.4.6-win64-VC11) ,但我使用 PHP DESIGNED FOR win32 (php-5.5.1-Win32-VC11-x86) 因为缺乏官方稳定的 php-version for win64。我的解决方案是为win64找到php!本主题中的第一个链接 http://www.apachelounge.com/viewtopic.php?p=23384 为我们提供了适用于 Windows x64 的 PHP 5.4.9!注意,那里没有 php.ini 文件!你应该从其他分销商那里拿走它们。在安装了我上面描述的那个版本之后,现在一切正常!