duplicator
Last commit date
assets
10 months ago
classes
10 months ago
ctrls
10 months ago
installer
10 months ago
languages
10 months ago
lib
10 months ago
src
10 months ago
template
10 months ago
vendor
10 months ago
views
10 months ago
deactivation.php
10 months ago
define.php
10 months ago
duplicator-main.php
10 months ago
duplicator.php
10 months ago
helper.php
10 months ago
readme.txt
10 months ago
uninstall.php
10 months ago
define.php
145 lines
| 1 | <?php |
| 2 | |
| 3 | //Prevent directly browsing to the file |
| 4 | defined('ABSPATH') || defined('DUPXABSPATH') || exit; |
| 5 | |
| 6 | define('DUPLICATOR_BLOG_URL', 'https://duplicator.com/'); |
| 7 | define('DUPLICATOR_DOCS_URL', DUPLICATOR_BLOG_URL . 'knowledge-base/'); |
| 8 | define( |
| 9 | 'DUPLICATOR_TECH_FAQ_URL', |
| 10 | DUPLICATOR_BLOG_URL . 'knowledge-base-article-categories/troubleshooting/' |
| 11 | ); |
| 12 | |
| 13 | if (function_exists('plugin_dir_url')) { |
| 14 | define('DUPLICATOR_VERSION', '1.5.13'); |
| 15 | define('DUPLICATOR_PLUGIN_URL', plugin_dir_url(__FILE__)); |
| 16 | define('DUPLICATOR_SITE_URL', get_site_url()); |
| 17 | |
| 18 | /* Paths should ALWAYS read "/" |
| 19 | uni: /home/path/file.txt |
| 20 | win: D:/home/path/file.txt |
| 21 | SSDIR = SnapShot Directory */ |
| 22 | if (!defined('ABSPATH')) { |
| 23 | define('ABSPATH', __DIR__); |
| 24 | } |
| 25 | |
| 26 | //PATH CONSTANTS |
| 27 | if (! defined('DUPLICATOR_WPROOTPATH')) { |
| 28 | define('DUPLICATOR_WPROOTPATH', str_replace('\\', '/', ABSPATH)); |
| 29 | } |
| 30 | |
| 31 | define('DUPLICATOR_PLUGIN_PATH', str_replace("\\", "/", plugin_dir_path(__FILE__))); |
| 32 | define('DUPLICATOR_ZIPPED_LOG_FILENAME', 'duplicator_lite_log.zip'); |
| 33 | define('DUPLICATOR_INSTALL_PHP', 'installer.php'); |
| 34 | define('DUPLICATOR_INSTALL_BAK', 'installer-backup.php'); |
| 35 | define('DUPLICATOR_INSTALLER_HASH_PATTERN', '[a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9][a-z0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'); |
| 36 | define('DUPLICATOR_INSTALL_SITE_OVERWRITE_ON', true); |
| 37 | |
| 38 | //GENERAL CONSTRAINTS |
| 39 | define('DUPLICATOR_PHP_MAX_MEMORY', 4294967296); // 4096MB |
| 40 | define('DUPLICATOR_DB_MAX_TIME', 5000); |
| 41 | define('DUPLICATOR_DB_EOF_MARKER', 'DUPLICATOR_MYSQLDUMP_EOF'); |
| 42 | define("DUPLICATOR_DB_MYSQLDUMP_ERROR_CONTAINING_LINE_COUNT", 10); |
| 43 | define("DUPLICATOR_DB_MYSQLDUMP_ERROR_CHARS_IN_LINE_COUNT", 1000); |
| 44 | //SCANNER CONSTRAINTS |
| 45 | define('DUPLICATOR_SCAN_SIZE_DEFAULT', 157286400); //150MB |
| 46 | define('DUPLICATOR_SCAN_WARNFILESIZE', 3145728); //3MB |
| 47 | define('DUPLICATOR_SCAN_WARN_DIR_SIZE', 104857600);//100MB |
| 48 | |
| 49 | define('DUPLICATOR_SCAN_CACHESIZE', 1048576); //1MB |
| 50 | define('DUPLICATOR_SCAN_DB_ALL_ROWS', 500000); //500k per DB |
| 51 | define('DUPLICATOR_SCAN_DB_ALL_SIZE', 52428800); //50MB DB |
| 52 | define('DUPLICATOR_SCAN_DB_TBL_ROWS', 100000); //100K rows per table |
| 53 | define('DUPLICATOR_SCAN_DB_TBL_SIZE', 10485760); //10MB Table |
| 54 | define('DUPLICATOR_SCAN_TIMEOUT', 150); //Seconds |
| 55 | define('DUPLICATOR_SCAN_MIN_WP', '4.7.0'); |
| 56 | define('DUPLICATOR_MAX_DUPARCHIVE_SIZE', 524288000); // 500 GB |
| 57 | |
| 58 | define('DUPLICATOR_TEMP_CLEANUP_SECONDS', 900); // 15 min = How many seconds to keep temp files around when delete is requested |
| 59 | define('DUPLICATOR_MAX_BUILD_RETRIES', 10); // Max times to try a part of progressive build work |
| 60 | define('DUPLICATOR_WEBCONFIG_ORIG_FILENAME', 'web.config.orig'); |
| 61 | define("DUPLICATOR_INSTALLER_DIRECTORY", duplicator_get_abs_path() . '/dup-installer'); |
| 62 | define('DUPLICATOR_MAX_LOG_SIZE', 400000); // The higher this is the more overhead |
| 63 | define('DUPLICATOR_ZIP_ARCHIVE_ADD_FROM_STR', false); |
| 64 | define('DUPLICATOR_DEACTIVATION_FEEDBACK', false); |
| 65 | define("DUPLICATOR_BUFFER_READ_WRITE_SIZE", 4377); |
| 66 | define("DUPLICATOR_ADMIN_NOTICES_USER_META_KEY", 'duplicator_admin_notices'); |
| 67 | define("DUPLICATOR_FEEDBACK_NOTICE_SHOW_AFTER_NO_PACKAGE", 5); |
| 68 | |
| 69 | define('DUPLICATOR_LOCAL_OVERWRITE_PARAMS', 'duplicator_pro_params_overwrite'); |
| 70 | |
| 71 | // MATCH archive pattern, matches[1] is archive name and hash |
| 72 | define('DUPLICATOR_ARCHIVE_REGEX_PATTERN', '/^(.+_[a-z0-9]{7,}_[0-9]{14})_archive\.(?:zip|daf)$/'); |
| 73 | // MATCH installer.php installer-backup.php and full installer with hash |
| 74 | define('DUPLICATOR_INSTALLER_REGEX_PATTERN', '/^(?:.+_[a-z0-9]{7,}_[0-9]{14}_)?installer(?:-backup)?\.php$/'); |
| 75 | // MATCH dup-installer and dup-installer-[HASH] |
| 76 | define('DUPLICATOR_DUP_INSTALLER_FOLDER_REGEX_PATTERN', '/^dup-installer(?:-[a-z0-9]{7,}-[0-9]{8})?$/'); |
| 77 | define('DUPLICATOR_DUP_INSTALLER_BOOTLOG_REGEX_PATTERN', '/^dup-installer-bootlog__[a-z0-9]{7,}-[0-9]{8}.txt$/'); |
| 78 | define('DUPLICATOR_DUP_INSTALLER_OWRPARAM_REGEX_PATTERN', '/^' . DUPLICATOR_LOCAL_OVERWRITE_PARAMS . '_[a-z0-9]{7,}-[0-9]{8}.json$/'); |
| 79 | define("DUPLICATOR_ORIG_FOLDER_PREFIX", 'original_files_'); |
| 80 | define('DUPLICATOR_CERT_PATH', apply_filters('duplicator_pro_certificate_path', DUPLICATOR_LITE_PATH . '/src/Libs/Certificates/cacert.pem')); |
| 81 | |
| 82 | |
| 83 | $GLOBALS['DUPLICATOR_SERVER_LIST'] = array('Apache','LiteSpeed', 'Nginx', 'Lighttpd', 'IIS', 'WebServerX', 'uWSGI'); |
| 84 | $GLOBALS['DUPLICATOR_OPTS_DELETE'] = array( |
| 85 | 'duplicator_ui_view_state', |
| 86 | 'duplicator_package_active', |
| 87 | 'duplicator_settings', |
| 88 | 'duplicator_is_pro_enable_notice_dismissed' |
| 89 | ); |
| 90 | $GLOBALS['DUPLICATOR_GLOBAL_FILE_FILTERS_ON'] = true; |
| 91 | $GLOBALS['DUPLICATOR_GLOBAL_FILE_FILTERS'] = array( |
| 92 | 'error_log', |
| 93 | 'error.log', |
| 94 | 'debug_log', |
| 95 | 'ws_ftp.log', |
| 96 | 'dbcache', |
| 97 | 'pgcache', |
| 98 | 'objectcache', |
| 99 | '.DS_Store' |
| 100 | ); |
| 101 | |
| 102 | |
| 103 | /* Used to flush a response every N items. |
| 104 | * Note: This value will cause the Zip file to double in size durning the creation process only*/ |
| 105 | define("DUPLICATOR_ZIP_FLUSH_TRIGGER", 1000); |
| 106 | |
| 107 | /* Let's setup few things to cover all PHP versions */ |
| 108 | if (!defined('PHP_VERSION')) { |
| 109 | define('PHP_VERSION', phpversion()); |
| 110 | } |
| 111 | if (!defined('PHP_VERSION_ID')) { |
| 112 | $version = explode('.', PHP_VERSION); |
| 113 | define('PHP_VERSION_ID', (($version[0] * 10000) + ($version[1] * 100) + $version[2])); |
| 114 | } |
| 115 | if (PHP_VERSION_ID < 50207) { |
| 116 | if (!(isset($version))) { |
| 117 | $version = explode('.', PHP_VERSION); |
| 118 | } |
| 119 | if (!defined('PHP_MAJOR_VERSION')) { |
| 120 | define('PHP_MAJOR_VERSION', $version[0]); |
| 121 | } |
| 122 | if (!defined('PHP_MINOR_VERSION')) { |
| 123 | define('PHP_MINOR_VERSION', $version[1]); |
| 124 | } |
| 125 | if (!defined('PHP_RELEASE_VERSION')) { |
| 126 | define('PHP_RELEASE_VERSION', $version[2]); |
| 127 | } |
| 128 | } |
| 129 | |
| 130 | if (!defined('DUPLICATOR_CUSTOM_STATS_REMOTE_HOST')) { |
| 131 | define('DUPLICATOR_CUSTOM_STATS_REMOTE_HOST', ''); |
| 132 | } |
| 133 | |
| 134 | if (!defined('DUPLICATOR_USTATS_DISALLOW')) { |
| 135 | define('DUPLICATOR_USTATS_DISALLOW', false); |
| 136 | } |
| 137 | } else { |
| 138 | error_reporting(0); |
| 139 | $port = (!empty($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] != "off") ? "https://" : "http://"; |
| 140 | $url = $port . $_SERVER["HTTP_HOST"]; |
| 141 | header("HTTP/1.1 404 Not Found", true, 404); |
| 142 | header("Status: 404 Not Found"); |
| 143 | exit(); |
| 144 | } |
| 145 |