使用XAMPP,我如何将PHP 5.3替换为PHP 5.2?

32

我正在使用XAMPP 1.7.2,但需要将PHP 5.3替换为PHP 5.2-我该怎么做?


1
为什么不能在PHP 5.3上使用Joomla 1.5? - Pekka
3
我已经编辑了这个问题,删除了与Joomla相关的内容,因为问题和答案都与它无关。 - nickf
1
@nickf - 这个问题与Joomla有关,因为Joomla版本低于1.5.5将在使用PHP 5.3时触发大量错误-但不会在使用PHP 5.2时触发-但我不知道OP是否考虑了这一点。 - Peter Ajtai
1
多年过去了,但在不同版本的XAMPP之间切换仍然很容易。只需要安装不同版本的XAMPP并重命名目录以在不同版本之间切换。请参见我于2013年2月15日的答案。 - Dan Nissenbaum
8个回答

24

感谢您的回答。我在 Windows XP 上进行了一些修改,现在它可以工作了。以下是我的步骤:

  1. 下载并安装最新版本的 XAMPP 到 G:\xampp。截至 2010/03/12,最新版本为1.7.3。
  2. 下载 xampp-win32-1.7.0.zip 的压缩包,这是最新的不带 php 5.3 的 XAMPP 发行版。将它解压到某个目录下,例如 G:\xampp-win32-1.7.0\。
  3. 删除 G:\xampp\php 目录。
  4. 删除 G:\xampp\apache\modules\php5apache2_2.dll 和 php5apache2_2_filter.dll 文件。
  5. 将 G:\xampp-win32-1.7.0\xampp\php 目录复制到 G:\xampp\php。
  6. 将 G:\xampp-win32-1.7.0\xampp\apache\bin\php* 文件复制到 G:\xampp\apache\bin。
  7. 编辑 G:\xampp\apache\conf\extra\httpd-xampp.conf 文件。
    • 在 <IfModule alias_module> 行之后立即添加以下行:

(省略部分内容)

<IfModule mime_module>
  LoadModule php5_module "/xampp/apache/bin/php5apache2_2.dll"
  AddType application/x-httpd-php-source .phps
  AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml .phpt
    <Directory "/xampp/htdocs/xampp">
      <IfModule php5_module>
        <Files "status.php">
            php_admin_flag safe_mode off
        </Files>
      </IfModule>
    </Directory>
</IfModule>
请注意,这是从1.7.0 xampp分发中相同的文件中获取的。如果遇到问题,请检查conf文件并使新文件与其匹配。
然后,您应该能够使用PHP 5.2.8启动apache服务器。您可以跟踪G:\xampp\apache\logs\error.log文件,以查看是否在启动时出现任何错误。如果没有,则应该能够在导航到localhost时看到XAMPP闪屏画面。
希望这能帮到下一个人。
祝好,
Jake

1
对我来说完美地工作了,谢谢。没有PHP 5.3的最新版本XAMPP是XAMPP 1.7.1,您可以在此处下载:http://www.oldapps.com/xampp.php?old_xampp=44 - nickf
1
Jake的解决方案起作用了,但是!!! 需要更改http-xampp.conf中加载php5_module的路径: 从: LoadModule php5_module modules/php5apache2_2.dll 到: LoadModule php5_module "/xampp/apache/bin/php5apache2_2.dll" 之后它就可以工作了。干杯! - user484723
1
工作得非常好,为了完整起见,我不得不注释掉这一行:# LoadModule php5_module modules/php5apache2_2.dll(我也使用了XAMPP 1.7.1)。 - Vincent Mimoun-Prat
多年过去了,但在不同版本的XAMPP之间进行切换非常简单;只需安装不同版本的XAMPP并重命名目录以在版本之间切换即可。请参见我2013年2月15日的答案。 - Dan Nissenbaum
希望这对下一个人有所帮助。是的,确实有帮助! - undone
1
我不知道oldapps.com,但是XAMPP连接到SourceForge获取旧版本。我在这里下载了我的XAMPP:http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/1.7.1/xampp-win32-1.7.1.zip/download。 - Randell

21

我知道这并不能帮到你,但我必须说这是我从XAMPP跳到WampServer的原因之一。WampServer允许你安装多个版本的PHP、Apache和/或MySQL,并通过一个菜单选项在它们之间切换。


4
我希望XAMPP能够解决这个功能问题,但WAMP在这方面做得非常好。 - WalterJ89
同意,对于多个MySQL版本也是如此。非常有用的/不错的功能! - NickGreen
1
对于Mac用户,您可以使用MAMP,它允许安装多个版本的PHP(我相信)。 - TheTechGuy
很高兴知道WAMP支持这个。这很重要,因为WordPress仍然支持PHP 5.2。 - Anh Tran

8

6
  1. 停止您的Apache服务器运行。
  2. 从apachefriends网站链接的SourceForge网站上下载包含PHP 5.2.*版本发布的最新版本XAMPP。
  3. 将当前安装中的PHP文件(MAC OSX: /xamppfiles/modules/libphp.so)重命名为其他名称(以防万一)。
  4. 从您刚刚下载的旧版XAMPP安装程序中复制位于相同目录树中的PHP文件,并将其放置在刚刚重命名的文件所在的目录中。
  5. 启动Apache服务器并生成新版本的phpinfo()。
  6. 确认PHP版本已降低后,删除旧版XAMPP安装程序中的其余文件。
  7. 享受乐趣。

我刚刚确认,在使用来自XAMPP for OS X 1.0.1(2009年4月)的PHP 5.2.9版本并手术移植到XAMPP for OS X 1.7.2(2009年8月)时,此方法有效。


1
在Windows上,我不得不替换整个php目录,以及apache bin和modules文件夹中的与php相关的.dll文件。如果出现运行时错误(apache启动,但在运行php脚本时崩溃),请检查lib ***.dll文件。 - gapple
在Linux上,我遵循了Daniel的指示,并添加了一些额外的步骤:1)复制整个lib/php目录(或者因为有一些启动apache的错误,就像之前GApple评论的那样)。2)复制bin/php*-5.2.9文件,并运行"share/lampp/activatephp 5.2.9"。 - CaptSolo

3

多年以后,但也值得一提-这很简单实现。

  • 只需重命名 C:\xampp 目录

  • 安装所需的新版本 XAMPP

  • 直接从xampp文件夹中运行控制面板脚本 "xampp-control.exe"。(忽略关于“必须从C:\xampp运行”的警告 - 这与多次安装无关。)

要在这些 XAMPP 版本之间切换,只需根据需要重新命名 xampp 目录并重新运行即可。


2

您需要卸载XAMPP 1.7.2并安装XAMPP 1.7.0,其中包含PHP 5.2.8。

D:\Documents and Settings\box>php -v

PHP 5.2.8 (cli) (built: Dec  8 2008 19:31:23)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
    with Zend Extension Manager v1.2.0, Copyright (c) 2003-2007, by Zend Technol
ogies
    with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies

XAMPP 1.6.8 包含 PHP 5.2.6 版本。

D:\Documents and Settings\box>php -v
PHP 5.2.6 (cli) (built: May  2 2008 18:02:07)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
    with Zend Extension Manager v1.2.0, Copyright (c) 2003-2007, by Zend Technol
ogies
    with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies

2
我无法让它正常工作。我最初使用了 PHP 5.3,然后尝试从 xampp-win32-1.7.0.zip 切换到 PHP 5.28 ,但无法使其正常工作。后来,我聪明地发现我是在使用 XAMPP,并且可以将其安装在任何位置,所以我从头开始进行了全新的安装,使用了 xampp-win32-1.7.0.zip。使用 XAMPP 的整个意义就在于您不必费心处理系统管理员的问题。在这种情况下使用它,可以让我很快地启动并运行。

0

对于OSX来说,这更容易。您的机器应该已经安装了Apache的一个版本。您需要做的就是找到该版本的php库(可能是5.2.x),并将其替换掉。

这是您从终端运行的命令*

cp /usr/libexec/apache2/libphp5.so /Applications/XAMPP/xamppfiles/modules/libphp5.so

我在10.5(Leopard)上测试过这个,所以可能会有所不同。 *关于这个的所有警告可能会破坏您的系统,所以请备份,等等。

编辑:在10.4(Tiger),Xampp 1.73上,使用在Mamp找到的libphp5.so文件,这根本不起作用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接