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;
}
我正在使用 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;
}