0

すべての zpanel バックアップを Amazon S3 アカウントにアップロードするスクリプトに取り組んでいます。zpanel バックアップを使用せず、CronJob を使用して作成したバックアップを作成してアップロードすると機能します。

zpanel バックアップをアップロードできない理由は、php の opendir 関数を使用して「backups」ディレクトリにアクセスする方法が見つからないためです。

ただし、バックアップフォルダーの絶対パスは知っています。そして、どうやら、この絶対パスは機能しませんopendir()

私は使用しました:opendir('var/zpanel/hostdata/my_username/backups/')

そして、それはうまくいきません。相対パスを使用したい場合、そこにも到達できません。

zPanel Backups ディレクトリを public_html フォルダー内のどこかに移動する方法はありますか? または、バックアップ フォルダーにアクセスできる Web URL はありますか? Ajaxplorer はそこに到達できますが、なぜ到達できないのですか?

どれも不可能な場合は、誰かが zPanel (すべての DB + public_html フォルダー内のすべて) とまったく同じようにバックアップを作成する方法を教えていただければ幸いです。

コードは次のようになります

require_once('S3.php');

// Enter your amazon s3 creadentials
$s3 = new S3('xxxxx', 'xxxxx');

if ($handle = opendir('var/zpanel/hostdata/my_username/backups/')) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != "..") {
            //echo "okay";
            echo $file; exit;

            if ($s3->putObjectFile("backups/$file", "my_basket", "$file", S3::ACL_PUBLIC_READ)) {
                    echo "<strong>We successfully uploaded your file.<br /></strong>";
                    //this will delete the file from your server after upload
                    //if (file_exists($baseurl . '/' . $file)) { unlink ($baseurl . '/' . $file); }
            }else{
                echo "<strong>Something went wrong while uploading your file... sorry.</strong>";
            }

        }else{
            echo "No file found here ".$root;
        }
    }
    closedir($handle);
}

よろしくお願いします!

4

1 に答える 1