htaccess 维护重定向,但排除一些文件夹(hostgator 多站点计划)

htaccess maintenance redirect, but exclude some folders (hostgator multsite plan)

我正在使用 Magento 构建一个虚拟商店,我正在使用 HostGator 托管 "M" plan,它支持多个站点,问题是 Magento 在根目录中,我有文件夹 /example.com.br 中的另一个站点,但是当我尝试通过浏览器访问该站点时:

http://example.com.br

我被重定向到 Magento 站点:

http://magentosite.com.br/maintenance.html

根文件夹(magento 的 htaccess)上的 htaccess 正在重定向到 magento 维护页面 http://magentosite.com.br/maintenance.html,我只需要在维护中保留 Magento,而不是某些文件夹(如文件夹)中的站点/example.com.br/example2.com.br 等等...

这是我在 Magento 中使用的维护代码(在 Root 中):

RewriteEngine On
RewriteBase /
# allow my ip to access magento store
RewriteCond %{REMOTE_ADDR} !^177\.18\.228\.58
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ https://magentosite.com.br/maintenance.html [R=307,L]

我试过这个解决方案 但对我不起作用...

我使用了 Magento 的维护模式,而不是使用 "maintenance.flag" 文件,我创建了自定义文件并重定向了它,所以我不必更改 htaccess 文件,所以子文件夹中的其他站点正常工作。

我将此代码添加到 Magento root 的 index.php:

$maintenanceFile = 'maintenance.html';
$ip = $_SERVER['REMOTE_ADDR'];
$allowed = array('177.99.108.78', 'another ip...');

if (file_exists($maintenanceFile) && !in_array($ip, $allowed)) {
    // include_once dirname(__FILE__) . '/errors/503.php';
    include_once dirname(__FILE__) . '/maintenance.html';
    exit;
}