Eine sehr einfache Lösung in vielen Situationen, für ein ziemlich ernstes Problem. In dem Szenario, in dem wir eine Website verschieben müssten, deren Dateien mehrere Tausend und der Webhosting -Anbieter nicht sicherstellt Sistem de Backup mit Archiv oder einer anderen ähnlichen Methode, um uns zuzulassen, über FTP übertragen Es ist eine Lösung, die viel Zeit in Anspruch nehmen würde.
Ein PHP -Skript, das auf dem Server geklettert ist, auf dem die Website gehostet wird Archivation im .tar -Format aller Dateien in einem Ordner.
Wie archivieren wir Dateien und Ordner auf einem Webserver und verwenden im PHP -Skript?
Wir kopieren das Skript unten und setzen es in eine .php -Datei auf dem Server. Beispiel: Archive.php SA enthält das folgende Skript:
<?php
try {
//make sure the script has enough time to run (300 seconds = 5 minutes)
ini_set('max_execution_time', '300');
ini_set('set_time_limit', '0');
$target = isset($_GET["targetname"]) ? $_GET["targetname"] : 'archive.tar'; //default to archive.tar
$dir = isset($_GET["dir"]) ? $_GET["dir"] : './.'; //defaults to all in current dir
//setup phar
$phar = new PharData($target);
$phar->buildFromDirectory(dirname(__FILE__) . '/'.$dir);
echo 'Compressing all files done, check your server for the file ' .$target;
} catch (Exception $e) {
// handle errors
echo 'An error has occured, details:';
echo $e->getMessage();
}
?>Vorsichtig! Das Skript muss in den Ordner geklettert werden, in dem wir den Ordner und die Dateien, die sie enthalten, archivieren möchten. Wenn wir beispielsweise alle Inhalte des WP-Content-Ordners von WordPress archivieren möchten, wird die von uns genannte Datei, die das Archive.php bezeichnet, in /wp-account /.
Das Archiv wird erstellt, indem im Browser auf die Datei archive.php zugegriffen wird. URL: http: .. name_website.tld/wp-account/archive.php und am Ende des Vorgangs auf dem Server werden die Datei archive.tar vorgestellt.
Wenn Sie ein großes Volumen von Dateien haben, ändern Sie den Wert von “Time-out” der Ausführungszeit. Sie können dies von php.ini oder .htaccess tun.
 
			