duplicator
Last commit date
assets
2 months ago
classes
2 months ago
ctrls
7 months ago
installer
1 week ago
languages
2 months ago
lib
3 years ago
src
1 week ago
template
2 months ago
vendor
3 years ago
views
4 months ago
deactivation.php
1 year ago
define.php
1 week ago
duplicator-main.php
2 years ago
duplicator.php
1 week ago
helper.php
3 years ago
readme.txt
1 week ago
uninstall.php
1 year ago
define.php
147 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.16.1'); |
| 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 | define('DUPLICATOR_LOGS_DIR_NAME', 'logs'); |
| 72 | |
| 73 | // MATCH archive pattern, matches[1] is archive name and hash |
| 74 | define('DUPLICATOR_ARCHIVE_REGEX_PATTERN', '/^(.+_[a-z0-9]{7,}_[0-9]{14})_archive\.(?:zip|daf)$/'); |
| 75 | // MATCH installer.php installer-backup.php and full installer with hash |
| 76 | define('DUPLICATOR_INSTALLER_REGEX_PATTERN', '/^(?:.+_[a-z0-9]{7,}_[0-9]{14}_)?installer(?:-backup)?\.php$/'); |
| 77 | // MATCH dup-installer and dup-installer-[HASH] |
| 78 | define('DUPLICATOR_DUP_INSTALLER_FOLDER_REGEX_PATTERN', '/^dup-installer(?:-[a-z0-9]{7,}-[0-9]{8})?$/'); |
| 79 | define('DUPLICATOR_DUP_INSTALLER_BOOTLOG_REGEX_PATTERN', '/^dup-installer-bootlog__[a-z0-9]{7,}-[0-9]{8}.txt$/'); |
| 80 | define('DUPLICATOR_DUP_INSTALLER_OWRPARAM_REGEX_PATTERN', '/^' . DUPLICATOR_LOCAL_OVERWRITE_PARAMS . '_[a-z0-9]{7,}-[0-9]{8}.json$/'); |
| 81 | define("DUPLICATOR_ORIG_FOLDER_PREFIX", 'original_files_'); |
| 82 | define('DUPLICATOR_CERT_PATH', apply_filters('duplicator_pro_certificate_path', DUPLICATOR_LITE_PATH . '/src/Libs/Certificates/cacert.pem')); |
| 83 | |
| 84 | |
| 85 | $GLOBALS['DUPLICATOR_SERVER_LIST'] = array('Apache','LiteSpeed', 'Nginx', 'Lighttpd', 'IIS', 'WebServerX', 'uWSGI'); |
| 86 | $GLOBALS['DUPLICATOR_OPTS_DELETE'] = array( |
| 87 | 'duplicator_ui_view_state', |
| 88 | 'duplicator_package_active', |
| 89 | 'duplicator_settings', |
| 90 | 'duplicator_is_pro_enable_notice_dismissed' |
| 91 | ); |
| 92 | $GLOBALS['DUPLICATOR_GLOBAL_FILE_FILTERS_ON'] = true; |
| 93 | $GLOBALS['DUPLICATOR_GLOBAL_FILE_FILTERS'] = array( |
| 94 | 'error_log', |
| 95 | 'error.log', |
| 96 | 'debug_log', |
| 97 | 'ws_ftp.log', |
| 98 | 'dbcache', |
| 99 | 'pgcache', |
| 100 | 'objectcache', |
| 101 | '.DS_Store' |
| 102 | ); |
| 103 | |
| 104 | |
| 105 | /* Used to flush a response every N items. |
| 106 | * Note: This value will cause the Zip file to double in size durning the creation process only*/ |
| 107 | define("DUPLICATOR_ZIP_FLUSH_TRIGGER", 1000); |
| 108 | |
| 109 | /* Let's setup few things to cover all PHP versions */ |
| 110 | if (!defined('PHP_VERSION')) { |
| 111 | define('PHP_VERSION', phpversion()); |
| 112 | } |
| 113 | if (!defined('PHP_VERSION_ID')) { |
| 114 | $version = explode('.', PHP_VERSION); |
| 115 | define('PHP_VERSION_ID', (($version[0] * 10000) + ($version[1] * 100) + $version[2])); |
| 116 | } |
| 117 | if (PHP_VERSION_ID < 50207) { |
| 118 | if (!(isset($version))) { |
| 119 | $version = explode('.', PHP_VERSION); |
| 120 | } |
| 121 | if (!defined('PHP_MAJOR_VERSION')) { |
| 122 | define('PHP_MAJOR_VERSION', $version[0]); |
| 123 | } |
| 124 | if (!defined('PHP_MINOR_VERSION')) { |
| 125 | define('PHP_MINOR_VERSION', $version[1]); |
| 126 | } |
| 127 | if (!defined('PHP_RELEASE_VERSION')) { |
| 128 | define('PHP_RELEASE_VERSION', $version[2]); |
| 129 | } |
| 130 | } |
| 131 | |
| 132 | if (!defined('DUPLICATOR_CUSTOM_STATS_REMOTE_HOST')) { |
| 133 | define('DUPLICATOR_CUSTOM_STATS_REMOTE_HOST', ''); |
| 134 | } |
| 135 | |
| 136 | if (!defined('DUPLICATOR_USTATS_DISALLOW')) { |
| 137 | define('DUPLICATOR_USTATS_DISALLOW', false); |
| 138 | } |
| 139 | } else { |
| 140 | error_reporting(0); |
| 141 | $port = (!empty($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] != "off") ? "https://" : "http://"; |
| 142 | $url = $port . $_SERVER["HTTP_HOST"]; |
| 143 | header("HTTP/1.1 404 Not Found", true, 404); |
| 144 | header("Status: 404 Not Found"); |
| 145 | exit(); |
| 146 | } |
| 147 |