如何使用PHP腳本來創建服務器上的文件和目錄(文件夾)的tar歸檔

在很多情況下,解決一個非常簡單的問題是非常嚴重的問題。 在這種情況下,我們必須移動一個網站,其文件數量為幾千,而虛擬主機提供商不會向我們提供 備份系統 與存檔或其他類似的方法,使我們這個, FTP傳輸 這是我們將需要很長的溶液。

上傳到託管該網站的服務器的PHP腳本將幫助我們做到這一點 所有文件的tar格式存檔的文件夾中.

如何使用PHP腳本在Web服務器上歸檔文件和文件夾?

複製下面的腳本,並將其放在服務器上的.php文件中。 示例:arhiva.php包含以下腳本:


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

小心! 腳本必須上傳到我們要歸檔文件夾和包含它們的文件的文件夾。 例如,如果我們要歸檔 wp-content 文件夾的所有內容,al WordPress,我們命名為arhiva.php的文件會上傳到/wp-content/。

通過在瀏覽器中訪問文件arhiva.php創建檔案。 網址:http://..web.name.tld/wp-content/archive.php,在服務器操作結束時,將顯示archive.tar文件。

如果文件量很大,請更改執行時間的“超時”值。 您可以從php.ini或.htaccess中執行此操作。

如何 » 網際網路 » 如何使用PHP腳本來創建服務器上的文件和目錄(文件夾)的tar歸檔

對技術充滿熱情,我喜歡測試和編寫有關操作系統的教程 macOS, Linux, Windows, 關於 WordPress, WooCommerce 和配置 LEMP 網絡服務器 (Linux、NGINX、MySQL 和 PHP)。 我寫在 StealthSettings.com 自 2006 年以來,幾年後我開始撰寫 iHowTo.Tips 教程和有關生態系統中設備的新聞 Apple: iPhone,iPad, Apple 手錶,HomePod, iMac, MacBook、AirPods 和配件。

發表評論