代码之家  ›  专栏  ›  技术社区  ›  Arc

PHP更新框架

  •  2
  • Arc  · 技术社区  · 16 年前

    有人知道一个框架(用PHP编写)来更新基于PHP的软件吗?

    我正在考虑一个库,它可以帮助在线检查更新,并提供生成、下载、验证和安装更新包的方法,甚至可以使用加密和公钥签名。

    虽然源代码管理工具在理论上很不错,但它们可能会使PHP应用程序的(初始)部署复杂化,因为它们不是基于PHP的(限制了可移植性),而且通常相当大。

    2 回复  |  直到 16 年前
        1
  •  3
  •   Arc    15 年前

    我现在已经开发了自己的解决方案,它提供了生成、验证和安装更新包的功能。

    基本上,它使用PHP的OpenSSL函数对对称加密的密钥进行公钥加密(RSA),使用mcrypt进行对称加密(AES),使用ZIP作为容器格式。这些构建块用于创建紧凑的更新包,并确保数据的完整性和真实性。

    也可以使用 openssl_pkcs7_sign() openssl_pkcs7_encrypt()

    web应用程序必须将其所有文件和独立于系统的数据放在一个应用程序目录中,可以替换这些目录以升级应用程序。

    更新操作如下:

    将ZIP存档内容提取到临时位置

    • 执行更新前脚本
    • 使用临时名称将新的应用程序目录移动到适当的位置
    • 将旧的应用程序目录移动到另一个位置或重命名它
    • 运行更新后脚本
    • 如果出了什么问题,试着后退-

        2
  •  1
  •   Julius F    16 年前

    使用源代码管理工具(比如git)检查新更新并加载最新提交的软件呢?

    推荐文章