forked from OpenMage/magento-lts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.php
56 lines (44 loc) · 1.69 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-2022 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 (file_exists($maintenanceIpFile)) {
/* if maintenanceFile and maintenanceIpFile are set 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 = explode(',', trim(file_get_contents($maintenanceIpFile)));
if (in_array($currentIp, $allowedIps)) {
/* IP address matches, bypass maintenanceMode */
$maintenanceBypass = true;
}
}
if (!$maintenanceBypass) {
include_once __DIR__ . '/errors/503.php';
exit;
}
}
Mage::run($mageRunCode, $mageRunType);