Codeigniter应用程序更新,如wordpress

时间:2018-08-24 21:53:22

标签: php codeigniter codeigniter-3 php-7 php-5.6

我已经用Codeigniter创建了一个项目。我想添加一个可以像Wordpress这样更新我的项目的系统。示例:假设我运行Project V.1.0,但是当我想实现V2.0时,我的客户端可以通过上载zip更新我的项目文件。 我想要像Wordpress这样的系统。而且我不使用git。因为我有一些客户。我希望他们下载或收集包含更新版本文件的zip文件。然后他们通过Codeigniter项目将此zip文件上传到服务器,该项目将自动更新为v2.0

2 个答案:

答案 0 :(得分:0)

上传zip,提取并替换所有文件。 保持zip结构与项目相同。

类似这样的东西:

update.zip

./root/application/controllers/*.*
./root/application/views/*.*
...

仅当运行apache / nginx的用户在文件系统上具有足够的特权时,这才可能。

答案 1 :(得分:0)

由于您的问题很广泛,我会给您一个相当广泛的答复;通常,我什至不回答这些类型的问题,但恰好有一段时间我做了一个相关的脚本。

这不是即插即用的功能,它具有来自CakePHP的一些第三方依赖项,需要自动加载。

该脚本在数组中创建所有指定文件夹的映像,添加文件清单和标识符文件,例如版本2。只要图像(zip文件)具有相同的更新模型,就可以将其上传到运行版本1的站点。一旦上传,模型将提取文件,只要zip中包含有效的标识符文件即可(以防止用户上传不相关的zip并破坏系统);该脚本还创建了该站点的当前映像(版本1),以防万一需要恢复。

该脚本还具有“还原以前的版本”功能,该功能将删除版本2(而非1)中的所有其他文件,并将还原1的原始文件。

对此我不提供任何支持。但是希望您会发现它对您有所帮助-虽然有点被黑客入侵,但在我有限的测试中,它仍然可以正常工作。

控制器:

PARTITION BY

型号:https://pastebin.com/UuzQ1tds