【发布时间】:2015-02-21 03:09:13
【问题描述】:
我的操作系统是 Windows 7 Professional 64 位。
我在C:\Program Files (x86)\Apache Software Foundation\Apache2.2 文件夹中安装了 32 位 Apache Server 2.2 版本,作为服务侦听端口 81,它工作正常。
我也有 32 位 PHP 5.5.20 线程安全版本工作正常:
- 我下载了 32 位 PHP 5.5.20 线程安全版
- 解压到
C:\DevPrograms\php-5.5.20-Win32-VC11-x86文件夹中 - 将php.ini-development文件复制到同一个文件夹并重命名为php.ini文件
- 在 php.ini 文件中取消注释
extension_dir = "ext"行 - 在路径系统变量中包含
C:\DevPrograms\php-5.5.20-Win32-VC11-x86 - 在命令提示符下运行
php -v,它工作正常。
现在我正在尝试将 PHP 连接到 Apache 服务器。
在我的C:\DevPrograms\php-5.5.20-Win32-VC11-x86 文件夹中有一个文件 php5apache2_4.dll
我打开C:\Program Files (x86)\Apache Software Foundation\Apache2.2\conf文件夹中的httpd.conf文件进行修改:
在最后一个#LoadModule 行之后包含这些行
# For PHP 5 do something like this:
LoadModule php5_module "C:/DevPrograms/php-5.5.20-Win32-VC11-x86/php5apache2_4.dll"
AddType application/x-httpd-php .php
# configure the path to php.ini
PHPIniDir "C:/DevPrograms/php-5.5.20-Win32-VC11-x86"
保存 httpd.conf 文件,然后在 Apache Service Monitor 窗口中,重新启动 Apache2.2 服务器。但我收到一条错误消息:
请求的操作失败!
为什么会失败?是因为版本不兼容吗?
【问题讨论】:
-
如果您的服务器是 64 位的,您为什么要下载所有内容的 32 位版本?你没有觉得这样做是错误的吗?
-
我在使用 64 位版本的软件时遇到了问题,所以我尽量使用 32 位版本的软件。在这种情况下,Apache 和 PHP 都是 32 位的,所以我相信这不是问题。问题可能是 PHP 5.5.20 不向后兼容 Apache 2.2