forked from OpenMage/magento-lts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.php
56 lines (44 loc) · 1.75 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php
/**
* OpenMage
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available at https://opensource.org/license/osl-3-0-php
*
* @category Mage
* @package Mage
* @copyright Copyright (c) 2006-2020 Magento, Inc. (https://www.magento.com)
* @copyright Copyright (c) 2018-2023 The OpenMage Contributors (https://www.openmage.org)
* @license https://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
define('MAGENTO_ROOT', getcwd());
$mageFilename = MAGENTO_ROOT . '/app/Mage.php';
$maintenanceFile = 'maintenance.flag';
$maintenanceIpFile = 'maintenance.ip';
require MAGENTO_ROOT . '/app/bootstrap.php';
require_once $mageFilename;
#Varien_Profiler::enable();
umask(0);
/* Store or website code */
$mageRunCode = $_SERVER['MAGE_RUN_CODE'] ?? '';
/* Run store or run website */
$mageRunType = $_SERVER['MAGE_RUN_TYPE'] ?? 'store';
if (file_exists($maintenanceFile)) {
$maintenanceBypass = false;
if (is_readable($maintenanceIpFile)) {
/* Use Mage to get remote IP (in order to respect remote_addr_headers xml config) */
Mage::init($mageRunCode, $mageRunType);
$currentIp = Mage::helper('core/http')->getRemoteAddr();
$allowedIps = preg_split('/[\ \n\,]+/', file_get_contents($maintenanceIpFile), 0, PREG_SPLIT_NO_EMPTY);
$maintenanceBypass = in_array($currentIp, $allowedIps, true);
}
if (!$maintenanceBypass) {
include_once __DIR__ . '/errors/503.php';
exit;
}
// remove config cache to make the system check for DB updates
$config = Mage::app()->getConfig();
$config->getCache()->remove($config->getCacheId());
}
Mage::run($mageRunCode, $mageRunType);