Hoe maak je een tar-archief van bestanden en mappen (folders) op de server maken met behulp van een PHP-script

Een zeer eenvoudige oplossing in veel situaties, voor een vrij ernstig probleem. In het scenario waarin we een website moeten verplaatsen waarvan de bestanden een paar duizend hebben, en de webhostingprovider biedt ons geen back-up systeem met archivering of soortgelijke werkwijze om ons deze, FTP-overdracht Het is een oplossing die we lang zou duren.

Een PHP-script dat is geüpload naar de server die de website host, zou ons hierbij helpen tar formaat archivering van alle bestanden in een map.

Hoe archiveer ik bestanden en mappen op een webserver met een PHP-script?

Kopieer het onderstaande script en plaats het in een .php-bestand op de server. Voorbeeld: arhiva.php om het onderstaande script te bevatten:

[Php]
proberen {
// zorg dat het script voldoende tijd heeft om te draaien (300 seconden = 5 minuten)
ini_set ('max_execution_time', '300');
ini_set ('set_time_limit', '0');
$target = isset ($ _ GET ["targetnaam "])? $ _GET ["targetnaam "]: 'archive.tar'; //default naar archive.tar
$ dir = isset ($ _ GET ["dir"])? $ _GET ["dir"]: './.'; //defaults voor iedereen in de huidige map
// setup phar
$ phar = nieuwe PharData ($ doel);
$ Phar-> buildFromDirectory (dirname (__FILE__). '/'.$dir);
echo 'Alles comprimeren files gedaan, controleer uw server voor de file '. $target;
} catch (Uitzondering $ e) {
// verwerk fouten
echo 'Er is een fout opgetreden, details:';
echo $ e-> getMessage ();
}
?>

[/ Php]

Waarschuwing! Script moet worden geüpload naar de map waarin we de map en de bestanden die het bevat, willen archiveren. Als we bijvoorbeeld alle inhoud van de wp-inhoudmap, WordPress, willen archiveren, zal het door ons genoemde bestand arhiva.php worden geüpload naar / wp-content /.

Het archief wordt gemaakt door het bestand arhiva.php in de browser te openen. url: http: ..web.name.tld / wp-content / archive.php, en aan het einde van de bewerking op de server zal het archive.tar-bestand aanwezig zijn.

Als u een groot aantal bestanden heeft, wijzigt u de "time-out" -waarde van de uitvoeringstijd. U kunt dit doen vanaf php.ini of .htaccess.

Hoe maak je een tar-archief van bestanden en mappen (folders) op de server maken met behulp van een PHP-script

Over de auteur

heimelijkheid

Gepassioneerd door alles wat gadget en IT is, schrijf ik met plezier op stealthsettings.com sinds 2006 en ik vind het leuk om met jullie nieuwe dingen te ontdekken over computers en besturingssystemen macOS, Linux, Windows, iOS en Android.

Laat een bericht achter