Skip to content

Instantly share code, notes, and snippets.

@Faisalawanisee
Forked from solepixel/unzip.php
Created August 10, 2018 09:46
Show Gist options
  • Save Faisalawanisee/58fd39eb3330b5902a1781b1bbfd0e39 to your computer and use it in GitHub Desktop.
Save Faisalawanisee/58fd39eb3330b5902a1781b1bbfd0e39 to your computer and use it in GitHub Desktop.
When load balancers have set timeouts at 30 seconds, this script will process requests that may take longer than 30 seconds (up to 15 minutes) without causing a timeout.
<?php
$cmd = "zip -9prv content_backup.zip .";
$pipe = popen($cmd, 'r');
if (empty($pipe)) {
throw new Exception("Unable to open pipe for command '$cmd'");
}
stream_set_blocking($pipe, false);
echo "\n";
while (!feof($pipe)) {
fread($pipe, 1024);
sleep(1);
echo ".";
flush();
}
echo "\n";
echo "Complete";
pclose($pipe);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment