我有一个脚本来备份托管网络服务器上的目录。该目录应压缩约 1GB。
error_reporting(E_ALL);
ini_set('display_errors', 1);
include 'Archive/Tar.php';
$dir = realpath(dirname(__FILE__).'/../../dir_to_zip/');
$archivname = dirname(__FILE__)."/backup_".basename($dir).date('_Y-m-d_His').".tar.gz";
$archiv = new Archive_Tar($archivname, 'gz');
$archiv->createModify($dir, "");
echo 'done';
但是,我通过 Brwoser (Firefox) 和主机的 CronJob 调用脚本,创建了多个存档:
文件 | 尺码 |
---|---|
|
129MB |
|
130MB |
|
135MB |
|
139MB |
|
159MB |
|
140MB |
部分存档每30秒创建一次,非常可疑。似乎来自浏览器的任何“保持活动”/“刷新”一次又一次地启动脚本。
我也很高兴听到压缩大文件的替代方案(我知道,这是一个很常见的问题)。我已经尝试过
ZipArchive
,但是在使用ZipArchive::ER_MULTIDISK
-Method或使用addFile
-method的内存溢出时出现addFromString
异常。
• 从 php 文件调用另一个 php 文件,同时给它一个参数
• PHP 8 中的 session_id 函数每次调用时都是空白
• 如果我再次重新加载,Youtube 播放器 API 可以多次获取服务器 url 并返回错误
• 试图获取非对象的属性“TransactionStatus”
• 使用提供的 RSA 私钥解密 URL,然后使用 PHP 通过 base64_decode 解密
• 使用多个下拉列表选择的 URL 查询字符串(最好是 PHP?)
• URL 参数没有在我的 WordPress 网站上的页面之间传递