Hvordan lage en. Tard og Director (mapper) arkiv på serveren, ved hjelp av et PHP -skript

O rezolvare foarte simpla in multe situatii, pentru o problema destul de serioasa. In scenariul in care am avea de mutat un website, ale carui fisiere numara cateva mii, iar providerul de web hosting nu ne asigura un sistem de backup cu arhivare sau alta metoda similara care sa ne permita acest lucru, transferul prin FTP este o solutie care ne-ar ocupa foarte mult timp.

Un script PHP urcat pe serverul care gazduieste website-ul ne-ar ajuta sa facem arhivarea in format .TAR al tuturor fisierelor dintr-un folder.

Cum arhivam fisiere si foldere pe un web server, folosind in script PHP?

Copiem scriptul de mai jos si il punem intr-un fisier .php pe server. Exemplu: arhiva.php sa contina scriptul de mai jos:


<?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();
}
?>

Atentie! Scriptul trebuie urcat in folderul in care dorim sa facem arhivarea folderul si fisierelor care le contine. De exemplu, daca dorim sa arhivam tot continutul folderului wp-content, al WordPress, fisierul numit de noi arhiva.php va fi urcat in /wp-content/.

Arhiva se creeaza accesand in browser fisierul arhiva.php. url: http:..nume_website.tld/wp-content/arhiva.php, iar la finalul operatiunii pe server va fi prezent fisierul archive.tar.

In cazul in care aveti un volum mare de fisiere, schimbati valoare de “timeout” a timpului de executie. Puteti face acest lucru din php.ini sau din .htaccess.

Lidenskapelig om teknologi skriver jeg med glede på stealthsetts.com som starter med 2006. Jeg har en rik opplevelse innen operativsystemer: macOS, Windows og Linux, men også innen programmeringsspråk og bloggplattformer (WordPress) og for nettbutikker (WooCommerce, Magento, Presashop).

Home Din kilde til IT -opplæringsprogrammer, nyttige tips og nyheter. Hvordan lage en. Tard og Director (mapper) arkiv på serveren, ved hjelp av et PHP -skript
Legg igjen en kommentar