5

我需要在我的 PHP 代码中安装这个补丁:

https://bugs.php.net/patch-display.php?bug_id=44522&patch=uploads_larger_than_2g_HEAD_v2&revision=latest

任何机构可以解释如何?

我的 PHP 版本:5.4.10

4

2 回答 2

7

您必须先拥有源文件和补丁文件,然后才能对其进行修补。它很简单。

  1. 进入 PHP 5.4 源码根目录
  2. patch -p0 < /path/to/patch.patch
  3. 如果显示错误,请按 撤消patch -R < /path/to/patch.patch。并调整-p num值。并转到步骤 2。这里-p是最小前缀,包含补丁文件中找到的每个文件名中的 num 个前导斜杠。一个或多个相邻斜线的序列被计为一个斜线。这控制了如何处理在补丁文件中找到的文件名,以防您将文件保存在与发送补丁的人不同的目录中。例如,假设补丁文件中的文件名是

    /u/howard/src/blurfl/blurfl.c
    

    设置-p0给出未修改的整个文件名,-p1给出

    u/howard/src/blurfl/blurfl.c
    

    没有前导斜杠,-p4给出

    blurfl/blurfl.c
    

    而根本不指定-p只是给你blurfl.c. 无论您最终得到什么,都将在当前目录或-d选项指定的目录中查找。后面的数字-p可以通过以下方式确定

  4. 之后,您需要编译此修补版本的 PHP。编译说明包含在 PHP 源目录中。在 Unix 中使用README.UNIX-BUILD-SYSTEM文件构建它,在 Windows 中使用README.WIN32-BUILD-SYSTEM文件。
于 2013-01-16T07:54:31.077 回答
1

将您的文件下载为php_upload_larger_than_2g.patch.

把它放在你的系统上。

跑: patch /path/to/patch/php_upload_larger_than_2g.patch /path/to/patching/file/whatever.php

这应该“修补”该文件。请注意,这只适用于类 Unix 系统。

于 2013-01-16T07:52:35.090 回答